From ea97e1d5cae714efd5fc0352d6f83f8f9ef707dd Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Mon, 7 Mar 2016 04:25:33 +0100 Subject: Skip valid certs --- cmd/acme/config.go | 5 +++++ cmd/acme/main.go | 12 +++++++----- 2 files changed, 12 insertions(+), 5 deletions(-) (limited to 'cmd/acme') diff --git a/cmd/acme/config.go b/cmd/acme/config.go index 39259fd..ebdcb76 100644 --- a/cmd/acme/config.go +++ b/cmd/acme/config.go @@ -1,6 +1,7 @@ package main import ( + "crypto/x509" "errors" "io/ioutil" "os/user" @@ -165,3 +166,7 @@ func checkWWW(altnames []string) []string { } return altnames } + +func (c Config) renew(cert *x509.Certificate) bool { + return time.Now().Add(c.Gracetime).After(cert.NotAfter) +} diff --git a/cmd/acme/main.go b/cmd/acme/main.go index cfd3c6b..2de2705 100644 --- a/cmd/acme/main.go +++ b/cmd/acme/main.go @@ -8,7 +8,10 @@ import ( "dim13.org/acme" ) -var confName = flag.String("conf", "", "configuration file") +var ( + confName = flag.String("conf", "", "configuration file") + forceRenew = flag.Bool("force", false, "force renew") +) func main() { flag.Parse() @@ -73,10 +76,9 @@ func main() { if err != nil { log.Println(err) } - if c.Leaf != nil { - log.Println(c.Leaf.Subject) - log.Println(c.Leaf.NotBefore) - log.Println(c.Leaf.NotAfter) + if c.Leaf != nil && !conf.renew(c.Leaf) && !*forceRenew { + log.Println("valid until", c.Leaf.NotAfter, "sipping") + continue } key, err := acme.NewKey(v.KeySize) -- cgit v1.2.3