Documentation ¶
Index ¶
- Constants
- type ProblemDetails
- func AccountDoesNotExist(detail string) *ProblemDetails
- func AlreadyRevoked(detail string) *ProblemDetails
- func BadCSR(detail string) *ProblemDetails
- func BadNonce(detail string) *ProblemDetails
- func BadPublicKey(detail string) *ProblemDetails
- func BadRevocationReason(detail string) *ProblemDetails
- func BadSignatureAlgorithm(detail string) *ProblemDetails
- func CAA(detail string) *ProblemDetails
- func Canceled(detail string, a ...any) *ProblemDetails
- func Conflict(detail string) *ProblemDetails
- func Connection(detail string) *ProblemDetails
- func ContentLengthRequired() *ProblemDetails
- func DNS(detail string) *ProblemDetails
- func InvalidContact(detail string) *ProblemDetails
- func InvalidContentType(detail string) *ProblemDetails
- func Malformed(detail string, a ...any) *ProblemDetails
- func MethodNotAllowed() *ProblemDetails
- func NotFound(detail string) *ProblemDetails
- func OrderNotReady(detail string) *ProblemDetails
- func Paused(detail string) *ProblemDetails
- func RateLimited(detail string) *ProblemDetails
- func RejectedIdentifier(detail string) *ProblemDetails
- func ServerInternal(detail string) *ProblemDetails
- func TLS(detail string) *ProblemDetails
- func Unauthorized(detail string) *ProblemDetails
- func UnsupportedContact(detail string) *ProblemDetails
- func UnsupportedIdentifier(detail string, a ...any) *ProblemDetails
- type ProblemType
- type SubProblemDetails
Constants ¶
const ( // Error types that can be used in ACME payloads. These are sorted in the // same order as they are defined in RFC8555 Section 6.7. We do not implement // the `compound`, `externalAccountRequired`, or `userActionRequired` errors, // because we have no path that would return them. AccountDoesNotExistProblem = ProblemType("accountDoesNotExist") AlreadyRevokedProblem = ProblemType("alreadyRevoked") BadCSRProblem = ProblemType("badCSR") BadNonceProblem = ProblemType("badNonce") BadPublicKeyProblem = ProblemType("badPublicKey") BadRevocationReasonProblem = ProblemType("badRevocationReason") BadSignatureAlgorithmProblem = ProblemType("badSignatureAlgorithm") CAAProblem = ProblemType("caa") // ConflictProblem is a problem type that is not defined in RFC8555. ConflictProblem = ProblemType("conflict") ConnectionProblem = ProblemType("connection") DNSProblem = ProblemType("dns") InvalidContactProblem = ProblemType("invalidContact") MalformedProblem = ProblemType("malformed") OrderNotReadyProblem = ProblemType("orderNotReady") PausedProblem = ProblemType("rateLimited") RateLimitedProblem = ProblemType("rateLimited") RejectedIdentifierProblem = ProblemType("rejectedIdentifier") ServerInternalProblem = ProblemType("serverInternal") TLSProblem = ProblemType("tls") UnsupportedContactProblem = ProblemType("unsupportedContact") UnsupportedIdentifierProblem = ProblemType("unsupportedIdentifier") ErrorNS = "urn:ietf:params:acme:error:" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ProblemDetails ¶
type ProblemDetails struct { Type ProblemType `json:"type,omitempty"` Detail string `json:"detail,omitempty"` // HTTPStatus is the HTTP status code the ProblemDetails should probably be sent // as. HTTPStatus int `json:"status,omitempty"` // SubProblems are optional additional per-identifier problems. See // RFC 8555 Section 6.7.1: https://tools.ietf.org/html/rfc8555#section-6.7.1 SubProblems []SubProblemDetails `json:"subproblems,omitempty"` }
ProblemDetails objects represent problem documents https://tools.ietf.org/html/draft-ietf-appsawg-http-problem-00
func AccountDoesNotExist ¶
func AccountDoesNotExist(detail string) *ProblemDetails
AccountDoesNotExist returns a ProblemDetails representing an AccountDoesNotExistProblem error
func AlreadyRevoked ¶
func AlreadyRevoked(detail string) *ProblemDetails
AlreadyRevoked returns a ProblemDetails with a AlreadyRevokedProblem and a 400 Bad Request status code.
func BadCSR ¶
func BadCSR(detail string) *ProblemDetails
BadCSR returns a ProblemDetails representing a BadCSRProblem.
func BadNonce ¶
func BadNonce(detail string) *ProblemDetails
BadNonce returns a ProblemDetails with a BadNonceProblem and a 400 Bad Request status code.
func BadPublicKey ¶
func BadPublicKey(detail string) *ProblemDetails
BadPublicKey returns a ProblemDetails with a BadPublicKeyProblem and a 400 Bad Request status code.
func BadRevocationReason ¶
func BadRevocationReason(detail string) *ProblemDetails
BadRevocationReason returns a ProblemDetails representing a BadRevocationReasonProblem
func BadSignatureAlgorithm ¶
func BadSignatureAlgorithm(detail string) *ProblemDetails
BadSignatureAlgorithm returns a ProblemDetails with a BadSignatureAlgorithmProblem and a 400 Bad Request status code.
func CAA ¶
func CAA(detail string) *ProblemDetails
CAA returns a ProblemDetails representing a CAAProblem
func Canceled ¶
func Canceled(detail string, a ...any) *ProblemDetails
Canceled returns a ProblemDetails with a MalformedProblem and a 408 Request Timeout status code.
func Conflict ¶
func Conflict(detail string) *ProblemDetails
Conflict returns a ProblemDetails with a ConflictProblem and a 409 Conflict status code.
func Connection ¶
func Connection(detail string) *ProblemDetails
Connection returns a ProblemDetails representing a ConnectionProblem error
func ContentLengthRequired ¶
func ContentLengthRequired() *ProblemDetails
ContentLengthRequired returns a ProblemDetails representing a missing Content-Length header error
func DNS ¶
func DNS(detail string) *ProblemDetails
DNS returns a ProblemDetails representing a DNSProblem
func InvalidContact ¶
func InvalidContact(detail string) *ProblemDetails
InvalidContact returns a ProblemDetails representing an InvalidContactProblem.
func InvalidContentType ¶
func InvalidContentType(detail string) *ProblemDetails
InvalidContentType returns a ProblemDetails suitable for a missing ContentType header, or an incorrect ContentType header
func Malformed ¶
func Malformed(detail string, a ...any) *ProblemDetails
Malformed returns a ProblemDetails with a MalformedProblem and a 400 Bad Request status code.
func MethodNotAllowed ¶
func MethodNotAllowed() *ProblemDetails
MethodNotAllowed returns a ProblemDetails representing a disallowed HTTP method error.
func NotFound ¶
func NotFound(detail string) *ProblemDetails
NotFound returns a ProblemDetails with a MalformedProblem and a 404 Not Found status code.
func OrderNotReady ¶
func OrderNotReady(detail string) *ProblemDetails
OrderNotReady returns a ProblemDetails representing a OrderNotReadyProblem
func Paused ¶
func Paused(detail string) *ProblemDetails
Paused returns a ProblemDetails representing a RateLimitedProblem error
func RateLimited ¶
func RateLimited(detail string) *ProblemDetails
RateLimited returns a ProblemDetails representing a RateLimitedProblem error
func RejectedIdentifier ¶
func RejectedIdentifier(detail string) *ProblemDetails
RejectedIdentifier returns a ProblemDetails with a RejectedIdentifierProblem and a 400 Bad Request status code.
func ServerInternal ¶
func ServerInternal(detail string) *ProblemDetails
ServerInternal returns a ProblemDetails with a ServerInternalProblem and a 500 Internal Server Failure status code.
func TLS ¶
func TLS(detail string) *ProblemDetails
TLS returns a ProblemDetails representing a TLSProblem error
func Unauthorized ¶
func Unauthorized(detail string) *ProblemDetails
Unauthorized returns a ProblemDetails with an UnauthorizedProblem and a 403 Forbidden status code.
func UnsupportedContact ¶
func UnsupportedContact(detail string) *ProblemDetails
UnsupportedContact returns a ProblemDetails representing an UnsupportedContactProblem
func UnsupportedIdentifier ¶
func UnsupportedIdentifier(detail string, a ...any) *ProblemDetails
UnsupportedIdentifier returns a ProblemDetails representing an UnsupportedIdentifierProblem
func (*ProblemDetails) Error ¶
func (pd *ProblemDetails) Error() string
func (*ProblemDetails) WithSubProblems ¶
func (pd *ProblemDetails) WithSubProblems(subProbs []SubProblemDetails) *ProblemDetails
WithSubProblems returns a new ProblemsDetails instance created by adding the provided subProbs to the existing ProblemsDetail.
type SubProblemDetails ¶
type SubProblemDetails struct { ProblemDetails Identifier identifier.ACMEIdentifier `json:"identifier"` }
SubProblemDetails represents sub-problems specific to an identifier that are related to a top-level ProblemDetails. See RFC 8555 Section 6.7.1: https://tools.ietf.org/html/rfc8555#section-6.7.1