1package dkim 2 3import ( 4 "errors" 5) 6 7var ( 8 // ErrSignPrivateKeyRequired when there not private key in config 9 ErrSignPrivateKeyRequired = errors.New("PrivateKey is required") 10 11 // ErrSignDomainRequired when there is no domain defined in config 12 ErrSignDomainRequired = errors.New("Domain is required") 13 14 // ErrSignSelectorRequired when there is no Selcteir defined in config 15 ErrSignSelectorRequired = errors.New("Selector is required") 16 17 // ErrSignHeaderShouldContainsFrom If Headers is specified it should at least contain 'from' 18 ErrSignHeaderShouldContainsFrom = errors.New("header must contains 'from' field") 19 20 // ErrSignBadCanonicalization If bad Canonicalization parameter 21 ErrSignBadCanonicalization = errors.New("bad Canonicalization parameter") 22 23 // ErrCandNotParsePrivateKey when unable to parse private key 24 ErrCandNotParsePrivateKey = errors.New("can not parse private key, check format (pem) and validity") 25 26 // ErrSignBadAlgo Bad algorithm 27 ErrSignBadAlgo = errors.New("bad algorithm. Only rsa-sha1 or rsa-sha256 are permitted") 28 29 // ErrBadMailFormat unable to parse mail 30 ErrBadMailFormat = errors.New("bad mail format") 31 32 // ErrBadMailFormatHeaders bad headers format (not DKIM Header) 33 ErrBadMailFormatHeaders = errors.New("bad mail format found in headers") 34 35 // ErrBadDKimTagLBodyTooShort bad l tag 36 ErrBadDKimTagLBodyTooShort = errors.New("bad tag l or bodyLength option. Body length < l value") 37 38 // ErrDkimHeaderBadFormat when errors found in DKIM header 39 ErrDkimHeaderBadFormat = errors.New("bad DKIM header format") 40 41 // ErrDkimHeaderNotFound when there's no DKIM-Signature header in an email we have to verify 42 ErrDkimHeaderNotFound = errors.New("no DKIM-Signature header field found ") 43 44 // ErrDkimHeaderBTagNotFound when there's no b tag 45 ErrDkimHeaderBTagNotFound = errors.New("no tag 'b' found in dkim header") 46 47 // ErrDkimHeaderNoFromInHTag when from is missing in h tag 48 ErrDkimHeaderNoFromInHTag = errors.New("'from' header is missing in h tag") 49 50 // ErrDkimHeaderMissingRequiredTag when a required tag is missing 51 ErrDkimHeaderMissingRequiredTag = errors.New("signature missing required tag") 52 53 // ErrDkimHeaderDomainMismatch if i tag is not a sub domain of d tag 54 ErrDkimHeaderDomainMismatch = errors.New("domain mismatch") 55 56 // ErrDkimVersionNotsupported version not supported 57 ErrDkimVersionNotsupported = errors.New("incompatible version") 58 59 // Query method unsupported 60 errQueryMethodNotsupported = errors.New("query method not supported") 61 62 // ErrVerifyBodyHash when body hash doesn't verify 63 ErrVerifyBodyHash = errors.New("body hash did not verify") 64 65 // ErrVerifyNoKeyForSignature no key 66 ErrVerifyNoKeyForSignature = errors.New("no key for verify") 67 68 // ErrVerifyKeyUnavailable when service (dns) is anavailable 69 ErrVerifyKeyUnavailable = errors.New("key unavailable") 70 71 // ErrVerifyTagVMustBeTheFirst if present the v tag must be the firts in the record 72 ErrVerifyTagVMustBeTheFirst = errors.New("pub key syntax error: v tag must be the first") 73 74 // ErrVerifyVersionMusBeDkim1 if présent flag v (version) must be DKIM1 75 ErrVerifyVersionMusBeDkim1 = errors.New("flag v must be set to DKIM1") 76 77 // ErrVerifyBadKeyType bad type for pub key (only rsa is accepted) 78 ErrVerifyBadKeyType = errors.New("bad type for key type") 79 80 // ErrVerifyRevokedKey key(s) for this selector is revoked (p is empty) 81 ErrVerifyRevokedKey = errors.New("revoked key") 82 83 // ErrVerifyBadKey when we can't parse pubkey 84 ErrVerifyBadKey = errors.New("unable to parse pub key") 85 86 // ErrVerifyNoKey when no key is found on DNS record 87 ErrVerifyNoKey = errors.New("no public key found in DNS TXT") 88 89 // ErrVerifySignatureHasExpired when signature has expired 90 ErrVerifySignatureHasExpired = errors.New("signature has expired") 91 92 // ErrVerifyInappropriateHashAlgo when h tag in pub key doesn't contain hash algo from a tag of DKIM header 93 ErrVerifyInappropriateHashAlgo = errors.New("inappropriate has algorithm") 94) 95