From 1983c08bbb7cae43c17252e4ce28fbf000c5d892 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Thu, 7 Jan 2016 19:23:01 +0100 Subject: Postpone registration --- cmd/acme/config.go | 1 + cmd/acme/main.go | 9 ++++++--- provider.go | 4 ++-- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/cmd/acme/config.go b/cmd/acme/config.go index 0dd396c..a28c619 100644 --- a/cmd/acme/config.go +++ b/cmd/acme/config.go @@ -42,6 +42,7 @@ type account struct { Phone string KeySize int Key string + pending bool *acme.Account acme.Contacts } diff --git a/cmd/acme/main.go b/cmd/acme/main.go index f0fb67d..f42c9e3 100644 --- a/cmd/acme/main.go +++ b/cmd/acme/main.go @@ -36,6 +36,7 @@ func main() { if err != nil { log.Fatal(err) } + acc.pending = true } acc.Contacts.AddMail(acc.Mail) acc.Contacts.AddPhone(acc.Phone) @@ -73,9 +74,11 @@ func main() { for k, des := range conf.Desire { log.Println("process", k) - err = des.provider.Register(des.account, des.account.Contacts) - if err != nil { - log.Fatal("register", err) + if des.account.pending { + err = des.provider.Register(des.account, des.account.Contacts) + if err != nil { + log.Fatal("register", err) + } } d, err := acme.NewDesire(des.Altnames, des.KeySize) diff --git a/provider.go b/provider.go index a8cfa64..006d19c 100644 --- a/provider.go +++ b/provider.go @@ -115,7 +115,7 @@ func (p *Provider) parseHeader(resp *http.Response) nextStep { func (p *Provider) parseJson(resp *http.Response, v interface{}) (nextStep, error) { ns := p.parseHeader(resp) - go p.parseNonce(resp) + p.parseNonce(resp) defer resp.Body.Close() switch resp.Header.Get("Content-Type") { case "application/problem+json": @@ -128,7 +128,7 @@ func (p *Provider) parseJson(resp *http.Response, v interface{}) (nextStep, erro func (p *Provider) parseCert(resp *http.Response) (*x509.Certificate, nextStep, error) { ns := p.parseHeader(resp) - go p.parseNonce(resp) + p.parseNonce(resp) defer resp.Body.Close() switch resp.Header.Get("Content-Type") { case "application/problem+json": -- cgit v1.2.3