errors.go 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. package cert
  2. import (
  3. "errors"
  4. "fmt"
  5. )
  6. var (
  7. ErrBadFormat = errors.New("bad wire format")
  8. ErrRootExpired = errors.New("root certificate is expired")
  9. ErrExpired = errors.New("certificate is expired")
  10. ErrNotCA = errors.New("certificate is not a CA")
  11. ErrNotSelfSigned = errors.New("certificate is not self-signed")
  12. ErrBlockListed = errors.New("certificate is in the block list")
  13. ErrFingerprintMismatch = errors.New("certificate fingerprint did not match")
  14. ErrSignatureMismatch = errors.New("certificate signature did not match")
  15. ErrInvalidPublicKey = errors.New("invalid public key")
  16. ErrInvalidPrivateKey = errors.New("invalid private key")
  17. ErrPublicPrivateCurveMismatch = errors.New("public key does not match private key curve")
  18. ErrPublicPrivateKeyMismatch = errors.New("public key and private key are not a pair")
  19. ErrPrivateKeyEncrypted = errors.New("private key must be decrypted")
  20. ErrCaNotFound = errors.New("could not find ca for the certificate")
  21. ErrUnknownVersion = errors.New("certificate version unrecognized")
  22. ErrCertPubkeyPresent = errors.New("certificate has unexpected pubkey present")
  23. ErrCurveMismatch = errors.New("certificate curve does not match CA")
  24. ErrPQSuiteMismatch = errors.New("certificate post-quantum suite does not match CA")
  25. ErrUnknownPQSuite = errors.New("unknown post-quantum suite")
  26. ErrInvalidPEMBlock = errors.New("input did not contain a valid PEM encoded block")
  27. ErrInvalidPEMCertificateBanner = errors.New("bytes did not contain a proper certificate banner")
  28. ErrInvalidPEMX25519PublicKeyBanner = errors.New("bytes did not contain a proper X25519 public key banner")
  29. ErrInvalidPEMX25519PrivateKeyBanner = errors.New("bytes did not contain a proper X25519 private key banner")
  30. ErrInvalidPEMEd25519PublicKeyBanner = errors.New("bytes did not contain a proper Ed25519 public key banner")
  31. ErrInvalidPEMEd25519PrivateKeyBanner = errors.New("bytes did not contain a proper Ed25519 private key banner")
  32. ErrNoPeerStaticKey = errors.New("no peer static key was present")
  33. ErrNoPayload = errors.New("provided payload was empty")
  34. ErrMissingDetails = errors.New("certificate did not contain details")
  35. ErrEmptySignature = errors.New("empty signature")
  36. ErrEmptyRawDetails = errors.New("empty rawDetails not allowed")
  37. )
  38. type ErrInvalidCertificateProperties struct {
  39. str string
  40. }
  41. func NewErrInvalidCertificateProperties(format string, a ...any) error {
  42. return &ErrInvalidCertificateProperties{fmt.Sprintf(format, a...)}
  43. }
  44. func (e *ErrInvalidCertificateProperties) Error() string {
  45. return e.str
  46. }