podman/vendor/github.com/letsencrypt/boulder/identifier/identifier.go

33 lines
1.1 KiB
Go

// The identifier package defines types for RFC 8555 ACME identifiers.
package identifier
// IdentifierType is a named string type for registered ACME identifier types.
// See https://tools.ietf.org/html/rfc8555#section-9.7.7
type IdentifierType string
const (
// DNS is specified in RFC 8555 for DNS type identifiers.
DNS = IdentifierType("dns")
)
// ACMEIdentifier is a struct encoding an identifier that can be validated. The
// protocol allows for different types of identifier to be supported (DNS
// names, IP addresses, etc.), but currently we only support RFC 8555 DNS type
// identifiers for domain names.
type ACMEIdentifier struct {
// Type is the registered IdentifierType of the identifier.
Type IdentifierType `json:"type"`
// Value is the value of the identifier. For a DNS type identifier it is
// a domain name.
Value string `json:"value"`
}
// DNSIdentifier is a convenience function for creating an ACMEIdentifier with
// Type DNS for a given domain name.
func DNSIdentifier(domain string) ACMEIdentifier {
return ACMEIdentifier{
Type: DNS,
Value: domain,
}
}