Skip to content

Commit a521dfc

Browse files
author
Alex Vaghin
committed
acme: expect 202 Accepted from Let's Encrypt
ACME draft specifies the CA servers should respond with 201 Created status code but Let's Encrypt responds with 202 Accepted when creating a new account. This change adds 202 Accepted as a valid response. Otherwise, the Client hangs while doing retries, discarding 202 responses as invalid. Tests are not updated intentionally due to this being non-conformant with the spec. Fixes golang/go#26251 Change-Id: I2918fce3873592c02e96f4118c4d1ecb42da3c4f Reviewed-on: https://go-review.googlesource.com/125415 Reviewed-by: Brad Fitzpatrick <[email protected]>
1 parent a214413 commit a521dfc

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

acme/acme.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -645,8 +645,9 @@ func (c *Client) doReg(ctx context.Context, url string, typ string, acct *Accoun
645645
req.Agreement = acct.AgreedTerms
646646
}
647647
res, err := c.post(ctx, c.Key, url, req, wantStatus(
648-
http.StatusOK, // updates and deletes
649-
http.StatusCreated, // new account creation
648+
http.StatusOK, // updates and deletes
649+
http.StatusCreated, // new account creation
650+
http.StatusAccepted, // Let's Encrypt divergent implementation
650651
))
651652
if err != nil {
652653
return nil, err

0 commit comments

Comments
 (0)