From f087a951510f3047d6d2a74e7a296a4eafd68fa6 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Fri, 25 Dec 2015 23:42:41 +0100 Subject: Collect errors in one place --- client.go | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'client.go') diff --git a/client.go b/client.go index c7b4877..244c90f 100644 --- a/client.go +++ b/client.go @@ -21,7 +21,12 @@ type Client struct { nonce chan string } -var errNoNonces = errors.New("out of nonces") +var ( + errNoNonces = errors.New("out of nonces") + errTimedOut = errors.New("timed out") + errContentType = errors.New("unknown content type") + errChallengeType = errors.New("unknown challenge") +) // Nonce implements jose nonce provider func (c Client) Nonce() (string, error) { @@ -68,8 +73,6 @@ func NewClient(directory string) (*Client, error) { // Request issuance POST new-cert 201 -> cert // Check for new cert GET cert 200 -var errContentType = errors.New("unknown content type") - // request is used for // new-reg, new-authz, challenge, new-cert func (c *Client) post(uri string, s Signer, v interface{}) (*http.Response, error) { @@ -209,8 +212,6 @@ func pickChallenge(c []Challenge) (int, Challenge) { return -1, Challenge{} } -var errTimedOut = errors.New("timed out") - func (c *Client) Authorize(a *Account, altnames []string) error { ident := Identifier{ Type: IdentDNS, @@ -244,6 +245,8 @@ func (c *Client) Authorize(a *Account, altnames []string) error { switch ch.Type { case ChallengeHTTP: s = &httpChallenge{Addr: "localhost:8080", Challenge: *ans} + default: + return errChallengeType } if err := Solve(s, time.Minute); err != nil { -- cgit v1.2.3