From a262e55aab59f23ccce5b4ebe3771a1c5e792dc2 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Fri, 25 Dec 2015 14:21:44 +0100 Subject: Save cert --- cmd/acme/main.go | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) (limited to 'cmd') diff --git a/cmd/acme/main.go b/cmd/acme/main.go index 6b07d5e..90cfa5d 100644 --- a/cmd/acme/main.go +++ b/cmd/acme/main.go @@ -23,7 +23,6 @@ func chkKey(k PrivKey) (*rsa.PrivateKey, error) { defer fd.Close() return acme.LoadKey(fd) } else { - log.Println("allocating", key, k.KeySize()) if err := os.MkdirAll(path.Dir(key), 0700); err != nil { return nil, err } @@ -44,6 +43,19 @@ func chkCert(k Cert) error { return nil } +func saveCert(k Cert, crt []byte) error { + cert := k.CertPath() + if err := os.MkdirAll(path.Dir(cert), 0755); err != nil { + return err + } + fd, err := os.Create(cert) + if err != nil { + return err + } + defer fd.Close() + return acme.SaveCert(fd, crt) +} + func chkKeys(c *Config) error { var err error for k, acc := range c.Account { @@ -58,14 +70,6 @@ func chkKeys(c *Config) error { if err != nil { return err } - err = chkCert(des) - if err != nil { - log.Println(k, "cert missing") - _, err = acme.NewCSR(des.Altnames, des.account.key) - if err != nil { - log.Fatal(err) - } - } c.Desire[k] = des } return nil @@ -77,6 +81,7 @@ func main() { if err != nil { log.Fatal(err) } + err = chkKeys(conf) if err != nil { log.Fatal(err) @@ -103,10 +108,14 @@ func main() { log.Println("authz", err) } - err = c.CSR(a, des.Altnames, des.key) + crt, err := c.Cert(a, des.Altnames, des.key) if err != nil { log.Println("cert", err) } - } + err = saveCert(des, crt) + if err != nil { + log.Println("save cert", err) + } + } } -- cgit v1.2.3