sisimai 5.7.0-java → 5.7.1-java
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ChangeLog.md +15 -0
- data/README-JA.md +8 -8
- data/README.md +8 -8
- data/lib/sisimai/arf.rb +2 -1
- data/lib/sisimai/eb.rb +116 -0
- data/lib/sisimai/fact.rb +24 -17
- data/lib/sisimai/lda.rb +20 -18
- data/lib/sisimai/lhost/amazonses.rb +11 -10
- data/lib/sisimai/lhost/courier.rb +4 -3
- data/lib/sisimai/lhost/domino.rb +2 -1
- data/lib/sisimai/lhost/einsundeins.rb +3 -2
- data/lib/sisimai/lhost/exchange2003.rb +8 -7
- data/lib/sisimai/lhost/exchange2007.rb +14 -13
- data/lib/sisimai/lhost/exim.rb +7 -6
- data/lib/sisimai/lhost/ezweb.rb +4 -3
- data/lib/sisimai/lhost/fml.rb +4 -3
- data/lib/sisimai/lhost/gmail.rb +10 -9
- data/lib/sisimai/lhost/googlegroups.rb +3 -2
- data/lib/sisimai/lhost/googleworkspace.rb +2 -1
- data/lib/sisimai/lhost/imailserver.rb +3 -2
- data/lib/sisimai/lhost/kddi.rb +4 -3
- data/lib/sisimai/lhost/notes.rb +2 -1
- data/lib/sisimai/lhost/postfix.rb +7 -6
- data/lib/sisimai/lhost/qmail.rb +10 -9
- data/lib/sisimai/lhost/sendmail.rb +4 -3
- data/lib/sisimai/lhost/trendmicro.rb +2 -1
- data/lib/sisimai/lhost/v5sendmail.rb +2 -1
- data/lib/sisimai/lhost/verizon.rb +3 -2
- data/lib/sisimai/reason/authfailure.rb +6 -5
- data/lib/sisimai/reason/badreputation.rb +5 -4
- data/lib/sisimai/reason/blocked.rb +6 -5
- data/lib/sisimai/reason/contenterror.rb +6 -5
- data/lib/sisimai/reason/delivered.rb +3 -2
- data/lib/sisimai/reason/emailtoolarge.rb +6 -5
- data/lib/sisimai/reason/expired.rb +3 -2
- data/lib/sisimai/reason/failedstarttls.rb +5 -3
- data/lib/sisimai/reason/feedback.rb +2 -1
- data/lib/sisimai/reason/filtered.rb +9 -8
- data/lib/sisimai/reason/hasmoved.rb +5 -4
- data/lib/sisimai/reason/hostunknown.rb +5 -4
- data/lib/sisimai/reason/mailboxfull.rb +7 -6
- data/lib/sisimai/reason/mailererror.rb +3 -2
- data/lib/sisimai/reason/networkerror.rb +3 -2
- data/lib/sisimai/reason/norelaying.rb +4 -3
- data/lib/sisimai/reason/notaccept.rb +5 -4
- data/lib/sisimai/reason/notcompliantrfc.rb +4 -3
- data/lib/sisimai/reason/onhold.rb +8 -7
- data/lib/sisimai/reason/policyviolation.rb +7 -6
- data/lib/sisimai/reason/ratelimited.rb +5 -4
- data/lib/sisimai/reason/rejected.rb +18 -14
- data/lib/sisimai/reason/requireptr.rb +5 -4
- data/lib/sisimai/reason/securityerror.rb +4 -3
- data/lib/sisimai/reason/spamdetected.rb +6 -5
- data/lib/sisimai/reason/suppressed.rb +4 -3
- data/lib/sisimai/reason/suspend.rb +4 -3
- data/lib/sisimai/reason/syntaxerror.rb +4 -3
- data/lib/sisimai/reason/systemerror.rb +3 -2
- data/lib/sisimai/reason/systemfull.rb +4 -3
- data/lib/sisimai/reason/undefined.rb +2 -1
- data/lib/sisimai/reason/userunknown.rb +13 -9
- data/lib/sisimai/reason/vacation.rb +2 -1
- data/lib/sisimai/reason/virusdetected.rb +6 -5
- data/lib/sisimai/reason.rb +45 -40
- data/lib/sisimai/rfc1894.rb +8 -2
- data/lib/sisimai/rfc2045.rb +6 -3
- data/lib/sisimai/rfc3464/thirdparty.rb +10 -9
- data/lib/sisimai/rfc3834.rb +4 -2
- data/lib/sisimai/rhost/aol.rb +3 -2
- data/lib/sisimai/rhost/apple.rb +12 -11
- data/lib/sisimai/rhost/cloudflare.rb +3 -2
- data/lib/sisimai/rhost/cox.rb +38 -37
- data/lib/sisimai/rhost/facebook.rb +17 -16
- data/lib/sisimai/rhost/franceptt.rb +39 -38
- data/lib/sisimai/rhost/godaddy.rb +35 -34
- data/lib/sisimai/rhost/google.rb +22 -21
- data/lib/sisimai/rhost/gsuite.rb +8 -7
- data/lib/sisimai/rhost/iua.rb +11 -10
- data/lib/sisimai/rhost/kddi.rb +3 -2
- data/lib/sisimai/rhost/messagelabs.rb +13 -12
- data/lib/sisimai/rhost/microsoft.rb +33 -32
- data/lib/sisimai/rhost/mimecast.rb +18 -17
- data/lib/sisimai/rhost/nttdocomo.rb +10 -9
- data/lib/sisimai/rhost/outlook.rb +3 -2
- data/lib/sisimai/rhost/spectrum.rb +19 -18
- data/lib/sisimai/rhost/tencent.rb +10 -9
- data/lib/sisimai/rhost/yahooinc.rb +11 -10
- data/lib/sisimai/rhost/zoho.rb +8 -7
- data/lib/sisimai/smtp/command.rb +13 -8
- data/lib/sisimai/smtp/failure.rb +9 -8
- data/lib/sisimai/smtp/reply.rb +23 -22
- data/lib/sisimai/smtp/status.rb +141 -140
- data/lib/sisimai/smtp/transcript.rb +3 -2
- data/lib/sisimai/version.rb +1 -1
- data/lib/sisimai.rb +2 -1
- data/set-of-emails/maildir/bsd/lhost-postfix-81.eml +130 -0
- data/set-of-emails/should-not-crash/go-423-deeply-nested-mime-parts.eml +20050 -0
- metadata +5 -2
|
@@ -2,6 +2,7 @@ module Sisimai
|
|
|
2
2
|
module RFC3464
|
|
3
3
|
module ThirdParty
|
|
4
4
|
class << self
|
|
5
|
+
require 'sisimai/eb'
|
|
5
6
|
ThirdParty = {
|
|
6
7
|
#"Aol" => ["X-Outbound-Mail-Relay-"], # X-Outbound-Mail-Relay-(Queue-ID|Sender)
|
|
7
8
|
"PowerMTA" => ["X-PowerMTA-"], # X-PowerMTA-(VirtualMTA|BounceCategory)
|
|
@@ -50,15 +51,15 @@ module Sisimai
|
|
|
50
51
|
"x-powermta-bouncecategory" => "text", # X-PowerMTA-BounceCategory: bad-mailbox
|
|
51
52
|
}.freeze
|
|
52
53
|
MessagesOf = {
|
|
53
|
-
"bad-domain" =>
|
|
54
|
-
"bad-mailbox" =>
|
|
55
|
-
"inactive-mailbox" =>
|
|
56
|
-
"message-expired" =>
|
|
57
|
-
"no-answer-from-host" =>
|
|
58
|
-
"policy-related" =>
|
|
59
|
-
"quota-issues" =>
|
|
60
|
-
"routing-errors" =>
|
|
61
|
-
"spam-related" =>
|
|
54
|
+
"bad-domain" => Sisimai::Eb::ReHOST,
|
|
55
|
+
"bad-mailbox" => Sisimai::Eb::ReUSER,
|
|
56
|
+
"inactive-mailbox" => Sisimai::Eb::ReQUIT,
|
|
57
|
+
"message-expired" => Sisimai::Eb::ReTIME,
|
|
58
|
+
"no-answer-from-host" => Sisimai::Eb::ReINET,
|
|
59
|
+
"policy-related" => Sisimai::Eb::ReWONT,
|
|
60
|
+
"quota-issues" => Sisimai::Eb::ReFULL,
|
|
61
|
+
"routing-errors" => Sisimai::Eb::RePROC,
|
|
62
|
+
"spam-related" => Sisimai::Eb::ReSPAM,
|
|
62
63
|
}.freeze
|
|
63
64
|
|
|
64
65
|
# Returns an array which is compatible with the value returned from Sisimai::RFC1894->field()
|
data/lib/sisimai/rfc3834.rb
CHANGED
|
@@ -3,6 +3,8 @@ module Sisimai
|
|
|
3
3
|
module RFC3834
|
|
4
4
|
class << self
|
|
5
5
|
# http://tools.ietf.org/html/rfc3834
|
|
6
|
+
require 'sisimai/eb'
|
|
7
|
+
|
|
6
8
|
MarkingsOf = {:boundary => '__SISIMAI_PSEUDO_BOUNDARY__'}
|
|
7
9
|
LowerLabel = %w[from to subject auto-submitted precedence x-apple-action].freeze
|
|
8
10
|
DoNotParse = {
|
|
@@ -116,13 +118,13 @@ module Sisimai
|
|
|
116
118
|
break if haveloaded >= maxmsgline
|
|
117
119
|
end
|
|
118
120
|
v['diagnosis'] ||= mhead['subject']
|
|
119
|
-
v['reason'] =
|
|
121
|
+
v['reason'] = Sisimai::Eb::ReAWAY
|
|
120
122
|
|
|
121
123
|
cv = v['diagnosis'].downcase
|
|
122
124
|
Suspending.each do |e|
|
|
123
125
|
# Check that the auto-replied message indicates the "Suspend" reason or not.
|
|
124
126
|
next unless Sisimai::String.aligned(cv, e)
|
|
125
|
-
v['reason'] =
|
|
127
|
+
v['reason'] = Sisimai::Eb::ReQUIT
|
|
126
128
|
break
|
|
127
129
|
end
|
|
128
130
|
|
data/lib/sisimai/rhost/aol.rb
CHANGED
|
@@ -5,9 +5,10 @@ module Sisimai
|
|
|
5
5
|
# only from Sisimai::Fact class.
|
|
6
6
|
module Aol
|
|
7
7
|
class << self
|
|
8
|
+
require 'sisimai/eb'
|
|
8
9
|
MessagesOf = {
|
|
9
|
-
|
|
10
|
-
|
|
10
|
+
Sisimai::Eb::ReHOST => ["Host or domain name not found"],
|
|
11
|
+
Sisimai::Eb::Re00MX => ["type=MX: Malformed or unexpected name server reply"],
|
|
11
12
|
}.freeze
|
|
12
13
|
|
|
13
14
|
# Detect bounce reason from Aol Mail: https://www.aol.com
|
data/lib/sisimai/rhost/apple.rb
CHANGED
|
@@ -5,8 +5,9 @@ module Sisimai
|
|
|
5
5
|
# This class is called only Sisimai::Fact class.
|
|
6
6
|
module Apple
|
|
7
7
|
class << self
|
|
8
|
+
require 'sisimai/eb'
|
|
8
9
|
MessagesOf = {
|
|
9
|
-
|
|
10
|
+
Sisimai::Eb::ReAUTH => [
|
|
10
11
|
# - 554 5.7.1 Your message was rejected due to example.jp's DMARC policy.
|
|
11
12
|
# See https://support.apple.com/en-us/HT204137 for
|
|
12
13
|
# - 554 5.7.1 [HME1] This message was blocked for failing both SPF and DKIM authentication
|
|
@@ -14,7 +15,7 @@ module Sisimai
|
|
|
14
15
|
's dmarc policy',
|
|
15
16
|
'blocked for failing both spf and dkim autentication checks',
|
|
16
17
|
],
|
|
17
|
-
|
|
18
|
+
Sisimai::Eb::ReBLOC => [
|
|
18
19
|
# - 550 5.7.0 Blocked - see https://support.proofpoint.com/dnsbl-lookup.cgi?ip=192.0.1.2
|
|
19
20
|
# - 550 5.7.1 Your email was rejected due to having a domain present in the Spamhaus
|
|
20
21
|
# DBL -- see https://www.spamhaus.org/dbl/
|
|
@@ -26,39 +27,39 @@ module Sisimai
|
|
|
26
27
|
'blocked - see https://support.proofpoint.com/dnsbl-lookup',
|
|
27
28
|
'not accepting connections',
|
|
28
29
|
],
|
|
29
|
-
|
|
30
|
+
Sisimai::Eb::ReMOVE => [
|
|
30
31
|
# - 550 5.1.6 recipient no longer on server: *****@icloud.com
|
|
31
32
|
'recipient no longer on server',
|
|
32
33
|
],
|
|
33
|
-
|
|
34
|
+
Sisimai::Eb::ReFULL => [
|
|
34
35
|
# - 552 5.2.2 <****@icloud.com>: user is over quota (in reply to RCPT TO command)
|
|
35
36
|
'user is over quota',
|
|
36
37
|
],
|
|
37
|
-
|
|
38
|
+
Sisimai::Eb::RePASS => [
|
|
38
39
|
# - 554 5.7.1 <*****@icloud.com>: Relay access denied
|
|
39
40
|
'relay access denied',
|
|
40
41
|
],
|
|
41
|
-
|
|
42
|
-
|
|
42
|
+
Sisimai::Eb::Re00MX => ['host/domain does not accept mail'],
|
|
43
|
+
Sisimai::Eb::ReWONT => [
|
|
43
44
|
# - 550 5.7.1 [CS01] Message rejected due to local policy.
|
|
44
45
|
# Please visit https://support.apple.com/en-us/HT204137
|
|
45
46
|
'due to local policy',
|
|
46
47
|
],
|
|
47
|
-
|
|
48
|
+
Sisimai::Eb::ReRATE => [
|
|
48
49
|
# - 421 4.7.1 Messages to ****@icloud.com deferred due to excessive volume.
|
|
49
50
|
# Try again later - https://support.apple.com/en-us/HT204137
|
|
50
51
|
'due to excessive volume',
|
|
51
52
|
],
|
|
52
|
-
|
|
53
|
+
Sisimai::Eb::ReFROM => [
|
|
53
54
|
# - 450 4.1.8 <kijitora@example.jp>: Sender address rejected: Domain not found
|
|
54
55
|
'sender address rejected',
|
|
55
56
|
],
|
|
56
|
-
|
|
57
|
+
Sisimai::Eb::ReQUIT => [
|
|
57
58
|
# - https://support.apple.com/guide/icloud/stop-using-or-reactivate-addresses-mm3adb030cbf/icloud
|
|
58
59
|
# - 550 5.1.1 <****@icloud.com>: inactive email address (in reply to RCPT TO command)
|
|
59
60
|
"inactive email address",
|
|
60
61
|
],
|
|
61
|
-
|
|
62
|
+
Sisimai::Eb::ReUSER => [
|
|
62
63
|
# - 550 5.1.1 <****@icloud.com>: inactive email address (in reply to RCPT TO command)
|
|
63
64
|
# - 550 5.1.1 unknown or illegal alias: ****@icloud.com
|
|
64
65
|
'user does not exist',
|
|
@@ -5,11 +5,12 @@ module Sisimai
|
|
|
5
5
|
# This class is called only from Sisimai::Fact class.
|
|
6
6
|
module Cloudflare
|
|
7
7
|
class << self
|
|
8
|
+
require 'sisimai/eb'
|
|
8
9
|
MessagesOf = {
|
|
9
10
|
# - 554 <YOUR_IP_ADDRESS> found on one or more RBLs (abusixip). Refer to
|
|
10
11
|
# https://developers.cloudflare.com/email-routing/postmaster/#spam-and-abusive-traffic/
|
|
11
|
-
|
|
12
|
-
|
|
12
|
+
Sisimai::Eb::ReBLOC => ["found on one or more DNSBLs"],
|
|
13
|
+
Sisimai::Eb::RePROC => ["Upstream error"],
|
|
13
14
|
}.freeze
|
|
14
15
|
|
|
15
16
|
# Detect bounce reason from Cloudflare Email Routing
|
data/lib/sisimai/rhost/cox.rb
CHANGED
|
@@ -5,12 +5,13 @@ module Sisimai
|
|
|
5
5
|
# called only Sisimai::Fact class.
|
|
6
6
|
module Cox
|
|
7
7
|
class << self
|
|
8
|
+
require 'sisimai/eb'
|
|
8
9
|
ErrorCodes = {
|
|
9
10
|
# CXBL
|
|
10
11
|
# - The sending IP address has been blocked by Cox due to exhibiting spam-like behavior.
|
|
11
12
|
# - Send an email request to Cox to ask for a sending IP address be unblocked.
|
|
12
13
|
# Note: Cox has sole discretion whether to unblock the sending IP address.
|
|
13
|
-
'CXBL' =>
|
|
14
|
+
'CXBL' => Sisimai::Eb::ReBLOC,
|
|
14
15
|
|
|
15
16
|
# CXDNS
|
|
16
17
|
# - There was an issue with the connecting IP address Domain Name System (DNS).
|
|
@@ -18,66 +19,66 @@ module Sisimai
|
|
|
18
19
|
# - Confirm the IP address that sends your email.
|
|
19
20
|
# - Check the rDNS of that IP address. If it passes, then wait 24 hours and try resending
|
|
20
21
|
# your email.
|
|
21
|
-
'CXDNS' =>
|
|
22
|
+
'CXDNS' => Sisimai::Eb::ReQPTR,
|
|
22
23
|
|
|
23
24
|
# CXSNDR
|
|
24
25
|
# - There was a problem with the sender's domain.
|
|
25
26
|
# - Your email failed authentication checks against your sending domain's SPF, DomainKeys,
|
|
26
27
|
# or DKIM policy.
|
|
27
|
-
'CXSNDR' =>
|
|
28
|
+
'CXSNDR' => Sisimai::Eb::ReAUTH,
|
|
28
29
|
|
|
29
30
|
# CXSMTP
|
|
30
31
|
# - There was a violation of SMTP protocol.
|
|
31
32
|
# - Your email wasn't delivered because Cox was unable to verify that it came from a
|
|
32
33
|
# legitimate email sender.
|
|
33
|
-
'CXSMTP' =>
|
|
34
|
+
'CXSMTP' => Sisimai::Eb::ReFROM,
|
|
34
35
|
|
|
35
36
|
# CXCNCT
|
|
36
37
|
# - There was a connection issue from the IP address.
|
|
37
38
|
# - There is a limit to the number of concurrent SMTP connections per IP address to
|
|
38
39
|
# protect the systems against attack. Ensure that the sending email server is not
|
|
39
40
|
# opening more than 10 concurrent connections to avoid reaching this limit.
|
|
40
|
-
'CXCNCT' =>
|
|
41
|
+
'CXCNCT' => Sisimai::Eb::ReRATE,
|
|
41
42
|
|
|
42
43
|
# CXMXRT
|
|
43
44
|
# - The sender has sent email to too many recipients and needs to wait before sending
|
|
44
45
|
# more email.
|
|
45
46
|
# - The email sender has exceeded the maximum number of sent email allowed.
|
|
46
|
-
'CXMXRT' =>
|
|
47
|
+
'CXMXRT' => Sisimai::Eb::ReRATE,
|
|
47
48
|
|
|
48
49
|
# CDRBL
|
|
49
50
|
# - The sending IP address has been temporarily blocked by Cox due to exhibiting spam-like
|
|
50
51
|
# behavior.
|
|
51
52
|
# - The block duration varies depending on reputation and other factors, but will not exceed
|
|
52
53
|
# 24 hours. Inspect email traffic for potential spam, and retry email delivery.
|
|
53
|
-
'CDRBL' =>
|
|
54
|
+
'CDRBL' => Sisimai::Eb::ReBLOC,
|
|
54
55
|
|
|
55
|
-
'CXTHRT' =>
|
|
56
|
-
'CXMJ' =>
|
|
57
|
-
'IPBL0001' =>
|
|
58
|
-
'IPBL0010' =>
|
|
59
|
-
'IPBL0100' =>
|
|
60
|
-
'IPBL0011' =>
|
|
61
|
-
'IPBL0101' =>
|
|
62
|
-
'IPBL0110' =>
|
|
63
|
-
'IPBL0111' =>
|
|
64
|
-
'IPBL1000' =>
|
|
65
|
-
'IPBL1001' =>
|
|
66
|
-
'IPBL1010' =>
|
|
67
|
-
'IPBL1011' =>
|
|
68
|
-
'IPBL1100' =>
|
|
69
|
-
'IPBL1101' =>
|
|
70
|
-
'IPBL1110' =>
|
|
71
|
-
'IPBL1111' =>
|
|
72
|
-
'IPBL00001' =>
|
|
56
|
+
'CXTHRT' => Sisimai::Eb::ReSAFE, # Email sending limited due to suspicious account activity.
|
|
57
|
+
'CXMJ' => Sisimai::Eb::ReSAFE, # Email sending blocked due to suspicious account activity on primary Cox account.
|
|
58
|
+
'IPBL0001' => Sisimai::Eb::ReBLOC, # The sending IP address is listed in the Spamhaus Zen DNSBL.
|
|
59
|
+
'IPBL0010' => Sisimai::Eb::ReBLOC, # The sending IP is listed in the Return Path DNSBL.
|
|
60
|
+
'IPBL0100' => Sisimai::Eb::ReBLOC, # The sending IP is listed in the Invaluement ivmSIP DNSBL.
|
|
61
|
+
'IPBL0011' => Sisimai::Eb::ReBLOC, # The sending IP is in the Spamhaus Zen and Return Path DNSBLs.
|
|
62
|
+
'IPBL0101' => Sisimai::Eb::ReBLOC, # The sending IP is in the Spamhaus Zen and Invaluement ivmSIP DNSBLs.
|
|
63
|
+
'IPBL0110' => Sisimai::Eb::ReBLOC, # The sending IP is in the Return Path and Invaluement ivmSIP DNSBLs.
|
|
64
|
+
'IPBL0111' => Sisimai::Eb::ReBLOC, # The sending IP is in the Spamhaus Zen, Return Path and Invaluement ivmSIP DNSBLs.
|
|
65
|
+
'IPBL1000' => Sisimai::Eb::ReBLOC, # The sending IP address is listed on a CSI blacklist.
|
|
66
|
+
'IPBL1001' => Sisimai::Eb::ReBLOC, # The sending IP is listed in the Cloudmark CSI and Spamhaus Zen DNSBLs.
|
|
67
|
+
'IPBL1010' => Sisimai::Eb::ReBLOC, # The sending IP is listed in the Cloudmark CSI and Return Path DNSBLs.
|
|
68
|
+
'IPBL1011' => Sisimai::Eb::ReBLOC, # The sending IP is in the Cloudmark CSI, Spamhaus Zen and Return Path DNSBLs.
|
|
69
|
+
'IPBL1100' => Sisimai::Eb::ReBLOC, # The sending IP is listed in the Cloudmark CSI and Invaluement ivmSIP DNSBLs.
|
|
70
|
+
'IPBL1101' => Sisimai::Eb::ReBLOC, # The sending IP is in the Cloudmark CSI, Spamhaus Zen and Invaluement IVMsip DNSBLs.
|
|
71
|
+
'IPBL1110' => Sisimai::Eb::ReBLOC, # The sending IP is in the Cloudmark CSI, Return Path and Invaluement ivmSIP DNSBLs.
|
|
72
|
+
'IPBL1111' => Sisimai::Eb::ReBLOC, # The sending IP is in the Cloudmark CSI, Spamhaus Zen, Return Path and Invaluement ivmSIP DNSBLs.
|
|
73
|
+
'IPBL00001' => Sisimai::Eb::ReBLOC, # The sending IP address is listed on a Spamhaus blacklist.
|
|
73
74
|
|
|
74
|
-
'URLBL011' =>
|
|
75
|
-
'URLBL101' =>
|
|
76
|
-
'URLBL110' =>
|
|
77
|
-
'URLBL1001' =>
|
|
75
|
+
'URLBL011' => Sisimai::Eb::ReSPAM, # A URL within the body of the message was found on blocklists SURBL and Spamhaus DBL.
|
|
76
|
+
'URLBL101' => Sisimai::Eb::ReSPAM, # A URL within the body of the message was found on blocklists SURBL and ivmURI.
|
|
77
|
+
'URLBL110' => Sisimai::Eb::ReSPAM, # A URL within the body of the message was found on blocklists Spamhaus DBL and ivmURI.
|
|
78
|
+
'URLBL1001' => Sisimai::Eb::ReSPAM, # The URL is listed on a Spamhaus blacklist.
|
|
78
79
|
}.freeze
|
|
79
80
|
MessagesOf = {
|
|
80
|
-
|
|
81
|
+
Sisimai::Eb::ReBLOC => [
|
|
81
82
|
# - An email client has repeatedly sent bad commands or invalid passwords resulting in
|
|
82
83
|
# a three-hour block of the client's IP address.
|
|
83
84
|
# - The sending IP address has exceeded the threshold of invalid recipients and has
|
|
@@ -87,18 +88,18 @@ module Sisimai
|
|
|
87
88
|
'cox too many bad commands from',
|
|
88
89
|
'too many invalid recipients',
|
|
89
90
|
],
|
|
90
|
-
|
|
91
|
+
Sisimai::Eb::ReBODY => [
|
|
91
92
|
# - The message has been rejected because it contains an attachment with one of the
|
|
92
93
|
# following prohibited file types, which commonly contain viruses: .shb, .shs, .vbe,
|
|
93
94
|
# .vbs, .wsc, .wsf, .wsh, .pif, .msc, .msi, .msp, .reg, .sct, .bat, .chm, .isp, .cpl,
|
|
94
95
|
# .js, .jse, .scr, .exe.
|
|
95
96
|
'attachment extension is forbidden',
|
|
96
97
|
],
|
|
97
|
-
|
|
98
|
+
Sisimai::Eb::ReWONT => [
|
|
98
99
|
# - The sending server has attempted to communicate too soon within the SMTP transaction
|
|
99
100
|
'esmtp no data before greeting',
|
|
100
101
|
],
|
|
101
|
-
|
|
102
|
+
Sisimai::Eb::ReWONT => [
|
|
102
103
|
# - The sending IP address has exceeded the five maximum concurrent connection limit.
|
|
103
104
|
# - The SMTP connection has exceeded the 100 email message threshold and was disconnected.
|
|
104
105
|
# - The sending IP address has exceeded one of these rate limits and has been temporarily
|
|
@@ -107,22 +108,22 @@ module Sisimai
|
|
|
107
108
|
'requested action aborted: try again later',
|
|
108
109
|
'message threshold exceeded',
|
|
109
110
|
],
|
|
110
|
-
|
|
111
|
+
Sisimai::Eb::ReFROM => [
|
|
111
112
|
# Cox requires that all sender domains resolve to a valid MX or A-record within DNS.
|
|
112
113
|
'sender rejected',
|
|
113
114
|
],
|
|
114
|
-
|
|
115
|
+
Sisimai::Eb::ReQPTR => [
|
|
115
116
|
# - The reverse DNS check of the sending server IP address has failed.
|
|
116
117
|
# - Cox requires that all connecting email servers contain valid reverse DNS PTR records.
|
|
117
118
|
'dns check failure - try again later',
|
|
118
119
|
'rejected - no rdns',
|
|
119
120
|
],
|
|
120
|
-
|
|
121
|
+
Sisimai::Eb::RePROC => [
|
|
121
122
|
# - Our systems are experiencing an issue which is causing a temporary inability to
|
|
122
123
|
# accept new email.
|
|
123
124
|
'esmtp server temporarily not available',
|
|
124
125
|
],
|
|
125
|
-
|
|
126
|
+
Sisimai::Eb::ReUSER => [
|
|
126
127
|
# - The intended recipient is not a valid Cox Email account.
|
|
127
128
|
'recipient rejected',
|
|
128
129
|
],
|
|
@@ -5,13 +5,14 @@ module Sisimai
|
|
|
5
5
|
# called only from Sisimai::Fact class.
|
|
6
6
|
module Facebook
|
|
7
7
|
class << self
|
|
8
|
+
require 'sisimai/eb'
|
|
8
9
|
ErrorCodes = {
|
|
9
10
|
# http://postmaster.facebook.com/response_codes
|
|
10
11
|
# NOT TESTD EXCEPT RCP-P2
|
|
11
|
-
|
|
12
|
+
Sisimai::Eb::ReAUTH => [
|
|
12
13
|
"POL-P7", # The message does not comply with Facebook's Domain Authentication requirements.
|
|
13
14
|
],
|
|
14
|
-
|
|
15
|
+
Sisimai::Eb::ReBLOC => [
|
|
15
16
|
"POL-P1", # Your mail server's IP Address is listed on the Spamhaus PBL.
|
|
16
17
|
"POL-P2", # Facebook will no longer accept mail from your mail server's IP Address.
|
|
17
18
|
"POL-P3", # Facebook is not accepting messages from your mail server. This will persist for 4 to 8 hours.
|
|
@@ -20,59 +21,59 @@ module Sisimai
|
|
|
20
21
|
"POL-T2", # ", but they may be retried later. This will persist for 4 to 8 hours.
|
|
21
22
|
"POL-T3", # ", but they may be retried later. This will persist for 24 to 48 hours.
|
|
22
23
|
],
|
|
23
|
-
|
|
24
|
+
Sisimai::Eb::ReBODY => [
|
|
24
25
|
"MSG-P2", # The message contains an attachment type that Facebook does not accept.
|
|
25
26
|
],
|
|
26
|
-
|
|
27
|
+
Sisimai::Eb::ReSIZE => [
|
|
27
28
|
"MSG-P1", # The message exceeds Facebook's maximum allowed size.
|
|
28
29
|
"INT-P2", # The message exceeds Facebook's maximum allowed size.
|
|
29
30
|
],
|
|
30
|
-
|
|
31
|
+
Sisimai::Eb::ReFILT => [
|
|
31
32
|
"RCP-P2", # The attempted recipient's preferences prevent messages from being delivered.
|
|
32
33
|
"RCP-P3", # The attempted recipient's privacy settings blocked the delivery.
|
|
33
34
|
],
|
|
34
|
-
|
|
35
|
+
Sisimai::Eb::ReFULL => [
|
|
35
36
|
"INT-P7", # The attempted recipient has exceeded their storage quota.
|
|
36
37
|
],
|
|
37
|
-
|
|
38
|
+
Sisimai::Eb::ReNRFC => [
|
|
38
39
|
"MSG-P3", # The message contains multiple instances of a header field that can only be present once.
|
|
39
40
|
],
|
|
40
|
-
|
|
41
|
+
Sisimai::Eb::ReWONT => [
|
|
41
42
|
"POL-P8", # The message does not comply with Facebook's abuse policies and will not be accepted.
|
|
42
43
|
],
|
|
43
|
-
|
|
44
|
+
Sisimai::Eb::ReRATE => [
|
|
44
45
|
"CON-T1", # Facebook's mail server currently has too many connections open to allow another one.
|
|
45
46
|
"CON-T2", # Your mail server currently has too many connections open to Facebook's mail servers.
|
|
46
47
|
"CON-T3", # Your mail server has opened too many new connections to Facebook's mail servers in a short period of time.
|
|
47
48
|
"CON-T4", # Your mail server has exceeded the maximum number of recipients for its current connection.
|
|
48
49
|
"MSG-T1", # The number of recipients on the message exceeds Facebook's allowed maximum.
|
|
49
50
|
],
|
|
50
|
-
|
|
51
|
+
Sisimai::Eb::ReFROM => [
|
|
51
52
|
"DNS-P1", # Your SMTP MAIL FROM domain does not exist.
|
|
52
53
|
"DNS-P2", # Your SMTP MAIL FROM domain does not have an MX record.
|
|
53
54
|
"DNS-T1", # Your SMTP MAIL FROM domain exists but does not currently resolve.
|
|
54
55
|
],
|
|
55
|
-
|
|
56
|
+
Sisimai::Eb::ReQPTR => [
|
|
56
57
|
"DNS-P3", # Your mail server does not have a reverse DNS record.
|
|
57
58
|
"DNS-T2", # You mail server's reverse DNS record does not currently resolve.
|
|
58
59
|
],
|
|
59
|
-
|
|
60
|
+
Sisimai::Eb::ReSPAM => [
|
|
60
61
|
"POL-P6", # The message contains a url that has been blocked by Facebook.
|
|
61
62
|
],
|
|
62
|
-
|
|
63
|
+
Sisimai::Eb::ReQUIT => [
|
|
63
64
|
"RCP-T4", # The attempted recipient address is currently deactivated. The user may or may not reactivate it.
|
|
64
65
|
],
|
|
65
|
-
|
|
66
|
+
Sisimai::Eb::RePROC => [
|
|
66
67
|
"RCP-T1", # The attempted recipient address is not currently available due to an internal system issue.
|
|
67
68
|
"INT-Tx", # These codes indicate a temporary issue internal to Facebook's system.
|
|
68
69
|
],
|
|
69
|
-
|
|
70
|
+
Sisimai::Eb::ReUSER => [
|
|
70
71
|
"RCP-P1", # The attempted recipient address does not exist.
|
|
71
72
|
"INT-P1", # The attempted recipient address does not exist.
|
|
72
73
|
"INT-P3", # The attempted recipient group address does not exist.
|
|
73
74
|
"INT-P4", # The attempted recipient address does not exist.
|
|
74
75
|
],
|
|
75
|
-
|
|
76
|
+
Sisimai::Eb::ReEXEC => [
|
|
76
77
|
"POL-P5", # The message contains a virus.
|
|
77
78
|
],
|
|
78
79
|
}.freeze
|
|
@@ -5,10 +5,11 @@ module Sisimai
|
|
|
5
5
|
# This class is called only Sisimai::Fact class.
|
|
6
6
|
module FrancePTT
|
|
7
7
|
class << self
|
|
8
|
+
require 'sisimai/eb'
|
|
8
9
|
ErrorCodes = {
|
|
9
10
|
# - Your sending IP is listed on Abusix RBL
|
|
10
11
|
# Please visit: https://lookup.abusix.com/search?q=$IP
|
|
11
|
-
"100" =>
|
|
12
|
+
"100" => Sisimai::Eb::ReBLOC,
|
|
12
13
|
|
|
13
14
|
# - Your sending IP is listed by SpamHaus RBL
|
|
14
15
|
# Please visit: https://check.spamhaus.org/listed/?searchterm=$IP
|
|
@@ -19,7 +20,7 @@ module Sisimai
|
|
|
19
20
|
# - The emails sent to the mail host Laposte.net were blocked by our services. To regularize
|
|
20
21
|
# your situation please click on the link below and follow the procedure
|
|
21
22
|
# https://www.spamhaus.org/lookup/ LPNAAA_101 (in reply to RCPT TO command))
|
|
22
|
-
'101' =>
|
|
23
|
+
'101' => Sisimai::Eb::ReBLOC,
|
|
23
24
|
|
|
24
25
|
# - Your sending IP is listed by Cloudmark RBL
|
|
25
26
|
# Please visit: https://csi.cloudmark.com/reset-request/?ip=$IP#
|
|
@@ -31,39 +32,39 @@ module Sisimai
|
|
|
31
32
|
# - The emails sent to the mail host Laposte.net were blocked by our services. To regularize
|
|
32
33
|
# your situation please click on the link below and follow the procedure
|
|
33
34
|
# https://senderscore.org/blacklistlookup/ LPN007_102
|
|
34
|
-
'102' =>
|
|
35
|
+
'102' => Sisimai::Eb::ReBLOC,
|
|
35
36
|
|
|
36
37
|
# - Your sending IP has been blacklisted by Orange
|
|
37
38
|
# Please contact Orange by using our contact form and select option
|
|
38
39
|
# "Un problème d'envoi d'emails vers les adresses Orange ou Wanadoo (deliverability issue)"
|
|
39
40
|
# - 550 mwinf5c10 ME Service refuse. Veuillez essayer plus tard.
|
|
40
41
|
# - Service refused, please try later. OFR006_103 192.0.2.1 [103]
|
|
41
|
-
'103' =>
|
|
42
|
+
'103' => Sisimai::Eb::ReBLOC,
|
|
42
43
|
|
|
43
44
|
# - 421 mwinf5c79 ME Trop de connexions, veuillez verifier votre configuration.
|
|
44
45
|
# - Too many connections, slow down. OFR005_104 [104]
|
|
45
46
|
# - Too many connections, slow down. LPN105_104
|
|
46
|
-
'104' =>
|
|
47
|
+
'104' => Sisimai::Eb::ReRATE,
|
|
47
48
|
|
|
48
49
|
# - Your IP address is missing a DNS PTR record, it also called a rDNS (reverse DNS)
|
|
49
50
|
# Please set up a valid DNS PTR record for your IP address that point to your domain,
|
|
50
51
|
# It's important that the sending IP address must match the IP address of the hostname
|
|
51
52
|
# defined in the PTR record
|
|
52
53
|
# - Service refused, please try later. LPN006_107
|
|
53
|
-
"107" =>
|
|
54
|
+
"107" => Sisimai::Eb::ReQPTR,
|
|
54
55
|
|
|
55
56
|
# - You are sending too many messages per SMTP connection
|
|
56
57
|
# Please reduce the number of messages per connection, recommended value is 100
|
|
57
58
|
# messages per connections
|
|
58
59
|
# - Veuillez essayer plus tard. LPN003_109
|
|
59
|
-
"109" =>
|
|
60
|
+
"109" => Sisimai::Eb::ReRATE,
|
|
60
61
|
|
|
61
62
|
# - Invalid HELO/EHLO
|
|
62
63
|
# Please set up a valid HELO/EHLO, it must be fully qualified domain name (FQDN) and
|
|
63
64
|
# should resolve (DNS record needed). E.g.: "mail.yourdomain.com"
|
|
64
65
|
# - Veuillez essayer plus tard. OFR004_201
|
|
65
|
-
"201" =>
|
|
66
|
-
"20X" =>
|
|
66
|
+
"201" => Sisimai::Eb::ReBLOC,
|
|
67
|
+
"20X" => Sisimai::Eb::ReBLOC,
|
|
67
68
|
|
|
68
69
|
# - Sender's Domain name SPF Error
|
|
69
70
|
# Please verify your mail from domain name DNS/TXT configuration for your SPF
|
|
@@ -71,7 +72,7 @@ module Sisimai
|
|
|
71
72
|
# to check your domain. (replace $YOUR_DOMAIN by your sender domain name)
|
|
72
73
|
# Please note:
|
|
73
74
|
# If you have changed your DNS record recently, please let DNS caches expire (TTL)
|
|
74
|
-
"39X" =>
|
|
75
|
+
"39X" => Sisimai::Eb::ReAUTH,
|
|
75
76
|
|
|
76
77
|
# - Sender's Domain DNS Error
|
|
77
78
|
# Please verify your mail from domain name DNS configuration. Your domain name must
|
|
@@ -80,94 +81,94 @@ module Sisimai
|
|
|
80
81
|
# If you have changed your DNS record recently, please let DNS caches expire (TTL)
|
|
81
82
|
# - 5.0.1 Emetteur invalide. Invalid Sender. LPN105_405
|
|
82
83
|
# - 501 5.1.0 Emetteur invalide. Invalid Sender. OFR004_405 [405] (in reply to MAIL FROM command))
|
|
83
|
-
'405' =>
|
|
84
|
+
'405' => Sisimai::Eb::ReFROM,
|
|
84
85
|
|
|
85
86
|
# - Your Sender has been rejected
|
|
86
87
|
# Please contact Orange by using our contact form and select option
|
|
87
88
|
# "Un problème d'envoi d'emails vers les adresses Orange ou Wanadoo (deliverability issue)"
|
|
88
|
-
"406" =>
|
|
89
|
+
"406" => Sisimai::Eb::ReFROM,
|
|
89
90
|
|
|
90
91
|
# - User doesn't exist here
|
|
91
92
|
# Please remove this email address from your distribution list, it does not exist
|
|
92
93
|
# - 550 5.1.1 Adresse d au moins un destinataire invalide.
|
|
93
94
|
# - Invalid recipient. LPN416 (in reply to RCPT TO command)
|
|
94
95
|
# - Invalid recipient. OFR_416 [416] (in reply to RCPT TO command)
|
|
95
|
-
'416' =>
|
|
96
|
+
'416' => Sisimai::Eb::ReUSER,
|
|
96
97
|
|
|
97
98
|
# - 552 5.1.1 Boite du destinataire pleine.
|
|
98
99
|
# - Recipient overquota. OFR_417 [417] (in reply to RCPT TO command))
|
|
99
|
-
'417' =>
|
|
100
|
+
'417' => Sisimai::Eb::ReFULL,
|
|
100
101
|
|
|
101
102
|
# - 550 5.5.0 Boite du destinataire archivee.
|
|
102
103
|
# - Archived recipient. LPN007_420 (in reply to RCPT TO command)
|
|
103
|
-
'420' =>
|
|
104
|
+
'420' => Sisimai::Eb::ReQUIT,
|
|
104
105
|
|
|
105
106
|
# - Your sender domain name has been blacklisted
|
|
106
107
|
# Your sender domain name has been blacklisted by Abusix OR SpamHaus, Please visit:
|
|
107
108
|
# - https://lookup.abusix.com/search?q=$YOUR_DOMAIN
|
|
108
109
|
# - https://check.spamhaus.org/listed/?searchterm=$YOUR_DOMAIN
|
|
109
|
-
"425" =>
|
|
110
|
+
"425" => Sisimai::Eb::ReFROM,
|
|
110
111
|
|
|
111
112
|
# - 550 5.5.0 Le compte du destinataire est bloque. The recipient account isblocked.
|
|
112
113
|
# LPN007_426 (in reply to RCPT TO command)
|
|
113
|
-
'426' =>
|
|
114
|
+
'426' => Sisimai::Eb::ReQUIT,
|
|
114
115
|
|
|
115
116
|
# - 421 4.2.0 Service refuse. Veuillez essayer plus tard. Service refused, please try later.
|
|
116
117
|
# OFR005_505 [505] (in reply to end of DATA command)
|
|
117
118
|
# - 421 4.2.1 Service refuse. Veuillez essayer plus tard. Service refused, please try later.
|
|
118
119
|
# LPN007_505 (in reply to end of DATA command)
|
|
119
|
-
'505' =>
|
|
120
|
+
'505' => Sisimai::Eb::RePROC,
|
|
120
121
|
|
|
121
122
|
# - Your message has been blocked by Orange, suspected spam
|
|
122
123
|
# Please contact Orange by using our contact form and select option
|
|
123
124
|
# "Un problème d'envoi d'emails vers les adresses Orange ou Wanadoo (deliverability issue)"
|
|
124
125
|
# - Mail rejete. Mail rejected. OFR_506 [506]
|
|
125
|
-
'506' =>
|
|
126
|
+
'506' => Sisimai::Eb::ReSPAM,
|
|
126
127
|
|
|
127
128
|
# - 550 5.5.0 Service refuse. Veuillez essayer plus tard. service refused, please try later.
|
|
128
129
|
# LPN005_510 (in reply to end of DATA command)
|
|
129
|
-
'510' =>
|
|
130
|
+
'510' => Sisimai::Eb::ReBLOC,
|
|
130
131
|
|
|
131
132
|
# - DMARC authentication failed, message rejected as defined by your DMARC policy
|
|
132
133
|
# Please check your SPF/DKIM/DMARC configuration. Please visit MxToolBox DMARC to
|
|
133
134
|
# check your domain configuration
|
|
134
|
-
"515" =>
|
|
135
|
+
"515" => Sisimai::Eb::ReAUTH,
|
|
135
136
|
|
|
136
137
|
# - 571 5.7.1 Message refused, DMARC verification Failed.
|
|
137
138
|
# - Message refuse, verification DMARC en echec LPN007_517
|
|
138
|
-
'517' =>
|
|
139
|
+
'517' => Sisimai::Eb::ReAUTH,
|
|
139
140
|
|
|
140
141
|
# - The sending IP address is not authorized to send messages for your domain as defined
|
|
141
142
|
# in the sender's Domain name SPF configuration (DNS/TXT)
|
|
142
143
|
# Please verify your mail from domain name DNS/TXT configuration for your SPF configuration.
|
|
143
144
|
# Please visit https://mxtoolbox.com/supertool3?action=spf:$YOUR_DOMAIN to check your
|
|
144
145
|
# domain. (replace $YOUR_DOMAIN by your sender domain name)
|
|
145
|
-
"519" =>
|
|
146
|
+
"519" => Sisimai::Eb::ReAUTH,
|
|
146
147
|
|
|
147
148
|
# - Due to bad behavior you have been rate limited, please try again later
|
|
148
149
|
# Due to inappropriate behavior, you have been rate limited. Please check what you
|
|
149
150
|
# are trying to send
|
|
150
151
|
# - 421 mwinf5c77 ME Service refuse. Veuillez essayer plus tard. Service refused, please try
|
|
151
152
|
# later. OFR_999 [999]
|
|
152
|
-
"99X" =>
|
|
153
|
+
"99X" => Sisimai::Eb::ReRATE,
|
|
153
154
|
|
|
154
155
|
# Other undocumented or old error codes
|
|
155
|
-
"105" => "",
|
|
156
|
-
"108" => "",
|
|
157
|
-
"305" =>
|
|
158
|
-
"401" =>
|
|
159
|
-
"402" =>
|
|
160
|
-
"403" =>
|
|
161
|
-
"415" =>
|
|
162
|
-
"421" =>
|
|
163
|
-
"423" => "",
|
|
164
|
-
"424" => "",
|
|
165
|
-
"513" => "",
|
|
166
|
-
"514" =>
|
|
167
|
-
"630" =>
|
|
156
|
+
"105" => "", # Veuillez essayer plus tard.
|
|
157
|
+
"108" => "", # service refused, please try later. LPN001_108
|
|
158
|
+
"305" => Sisimai::Eb::ReSAFE, # 550 5.7.0 Code d'authentification invalide OFR_305
|
|
159
|
+
"401" => Sisimai::Eb::ReAUTH, # 550 5.5.0 SPF: *** is not allowed to send mail. LPN004_401
|
|
160
|
+
"402" => Sisimai::Eb::ReSAFE, # 550 5.5.0 Authentification requise. Authentication Required. LPN105_402
|
|
161
|
+
"403" => Sisimai::Eb::ReFROM, # 5.0.1 Emetteur invalide. Invalid Sender.
|
|
162
|
+
"415" => Sisimai::Eb::ReFROM, # Emetteur invalide. Invalid Sender. OFR_415
|
|
163
|
+
"421" => Sisimai::Eb::ReFROM, # 5.5.3 Mail from not owned by user. LPN105_421.
|
|
164
|
+
"423" => "", # Service refused, please try later. LPN105_423
|
|
165
|
+
"424" => "", # Veuillez essayer plus tard. LPN105_424
|
|
166
|
+
"513" => "", # Mail rejete. Mail rejected. OUK_513
|
|
167
|
+
"514" => Sisimai::Eb::ReSIZE, # Taille limite du message atteinte
|
|
168
|
+
"630" => Sisimai::Eb::ReWONT, # 554 5.7.1 Client host rejected LPN000_630
|
|
168
169
|
}.freeze
|
|
169
170
|
MessagesOf = {
|
|
170
|
-
|
|
171
|
+
Sisimai::Eb::ReAUTH => [
|
|
171
172
|
# - 421 smtp.orange.fr [192.0.2.1] Emetteur invalide, Veuillez verifier la configuration
|
|
172
173
|
# SPF/DNS de votre nom de domaine. Invalid Sender. SPF check failed, please verify the
|
|
173
174
|
# SPF/DNS configuration for your domain name.
|