errors.go 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  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. ErrInvalidPEMBlock = errors.New("input did not contain a valid PEM encoded block")
  24. ErrInvalidPEMCertificateBanner = errors.New("bytes did not contain a proper certificate banner")
  25. ErrInvalidPEMX25519PublicKeyBanner = errors.New("bytes did not contain a proper X25519 public key banner")
  26. ErrInvalidPEMX25519PrivateKeyBanner = errors.New("bytes did not contain a proper X25519 private key banner")
  27. ErrInvalidPEMEd25519PublicKeyBanner = errors.New("bytes did not contain a proper Ed25519 public key banner")
  28. ErrInvalidPEMEd25519PrivateKeyBanner = errors.New("bytes did not contain a proper Ed25519 private key banner")
  29. ErrNoPeerStaticKey = errors.New("no peer static key was present")
  30. ErrNoPayload = errors.New("provided payload was empty")
  31. ErrMissingDetails = errors.New("certificate did not contain details")
  32. ErrEmptySignature = errors.New("empty signature")
  33. ErrEmptyRawDetails = errors.New("empty rawDetails not allowed")
  34. )
  35. type ErrInvalidCertificateProperties struct {
  36. str string
  37. }
  38. func NewErrInvalidCertificateProperties(format string, a ...any) error {
  39. return &ErrInvalidCertificateProperties{fmt.Sprintf(format, a...)}
  40. }
  41. func (e *ErrInvalidCertificateProperties) Error() string {
  42. return e.str
  43. }