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
|
@@ -5,6 +5,7 @@ module Sisimai
|
|
|
5
5
|
# called only Sisimai::Fact class.
|
|
6
6
|
module GoDaddy
|
|
7
7
|
class << self
|
|
8
|
+
require 'sisimai/eb'
|
|
8
9
|
# https://www.godaddy.com/help/what-does-my-email-bounceback-mean-3568
|
|
9
10
|
ErrorCodes = {
|
|
10
11
|
# Sender bounces
|
|
@@ -13,19 +14,19 @@ module Sisimai
|
|
|
13
14
|
# - Authentication is not allowed on inbound mail. This happens when you have incorrect
|
|
14
15
|
# outgoing SMTP server settings set up in your email client, like Outlook or Gmail.
|
|
15
16
|
# - Set up your email client using the SMTP server setting smtpout.secureserver.net.
|
|
16
|
-
'IB401' =>
|
|
17
|
+
'IB401' => Sisimai::Eb::ReSAFE,
|
|
17
18
|
|
|
18
19
|
# - 550 jane@coolexample.com Blank From: addresses are not allowed. Provide a valid From.
|
|
19
20
|
# IB501
|
|
20
21
|
# - The email message "from" field is blank.
|
|
21
22
|
# - Add a valid "from" address and try to send the email again.
|
|
22
|
-
'IB501' =>
|
|
23
|
+
'IB501' => Sisimai::Eb::ReNRFC,
|
|
23
24
|
|
|
24
25
|
# - 550 jane@coolexample.com IP addresses are not allowed as a From: Address. Provide a
|
|
25
26
|
# valid From. IB502
|
|
26
27
|
# - Email messages can't be sent "from" an IP address.
|
|
27
28
|
# - Add a valid "from" address and try to send the email again.
|
|
28
|
-
'IB502' =>
|
|
29
|
+
'IB502' => Sisimai::Eb::ReNRFC,
|
|
29
30
|
|
|
30
31
|
# - 550 coolexample.com From: Domain is invalid. Provide a valid From: IB506
|
|
31
32
|
# - The domain doesn't have valid MX Records, an IP address, or there were issues during
|
|
@@ -33,7 +34,7 @@ module Sisimai
|
|
|
33
34
|
# - Verify that you're sending from a valid domain. Then verify that the domain has valid
|
|
34
35
|
# DNS records by checking your zone file. If the DNS isn't valid, it must be fixed
|
|
35
36
|
# before you resend the email.
|
|
36
|
-
'IB506' =>
|
|
37
|
+
'IB506' => Sisimai::Eb::ReFROM,
|
|
37
38
|
|
|
38
39
|
# - 550 jane@coolexample.com Invalid SPF record. Inspect your SPF settings, and try again.
|
|
39
40
|
# IB508
|
|
@@ -41,7 +42,7 @@ module Sisimai
|
|
|
41
42
|
# sending email server to send email from the domain.
|
|
42
43
|
# - Modify the SPF record to include the server you're trying to send from or remove the
|
|
43
44
|
# SPF record from the domain.
|
|
44
|
-
'IB508' =>
|
|
45
|
+
'IB508' => Sisimai::Eb::ReAUTH,
|
|
45
46
|
|
|
46
47
|
# - 421 Temporarily rejected. Reverse DNS for this IP failed. IB108
|
|
47
48
|
# - The IP address attempting to send mail does not have reverse DNS setup, or the DNS
|
|
@@ -49,19 +50,19 @@ module Sisimai
|
|
|
49
50
|
# - Verify the sending IP address has reverse DNS set up before resending the email.
|
|
50
51
|
# GoDaddy manages reverse DNS when using our email services. We do not support custom
|
|
51
52
|
# reverse DNS.
|
|
52
|
-
'IB108' =>
|
|
53
|
+
'IB108' => Sisimai::Eb::ReQPTR,
|
|
53
54
|
|
|
54
55
|
# Content bounces
|
|
55
56
|
# ---------------------------------------------------------------------------------------
|
|
56
57
|
# - 552 This message has been rejected due to content judged to be spam by the internet
|
|
57
58
|
# community. IB212
|
|
58
59
|
# - The email message contains a link, attachment or pattern caught by our filters as spam.
|
|
59
|
-
'IB212' =>
|
|
60
|
+
'IB212' => Sisimai::Eb::ReSPAM,
|
|
60
61
|
|
|
61
62
|
# - 552 Virus infected message rejected. IB705
|
|
62
63
|
# - The email message containing a link, attachment or pattern caught by our filters as a
|
|
63
64
|
# possible virus.
|
|
64
|
-
'IB705' =>
|
|
65
|
+
'IB705' => Sisimai::Eb::ReEXEC,
|
|
65
66
|
|
|
66
67
|
# Rate limiting bounces
|
|
67
68
|
# ---------------------------------------------------------------------------------------
|
|
@@ -69,19 +70,19 @@ module Sisimai
|
|
|
69
70
|
# retry. IB605
|
|
70
71
|
# - The message has attempted to mail too many recipients.
|
|
71
72
|
# - Reduce the number of recipients and try again.
|
|
72
|
-
'IB605' =>
|
|
73
|
+
'IB605' => Sisimai::Eb::ReRATE,
|
|
73
74
|
|
|
74
75
|
# - 421 Connection refused, too many sessions from This IP. Lower the number of concurrent
|
|
75
76
|
# sessions. IB007
|
|
76
77
|
# - This IP address currently has too many sessions open.
|
|
77
78
|
# - Check with your email provider to reduce the number of open sessions on your IP
|
|
78
79
|
# address and then try again.
|
|
79
|
-
'IB007' =>
|
|
80
|
+
'IB007' => Sisimai::Eb::ReRATE,
|
|
80
81
|
|
|
81
82
|
# - 421 Server temporarily unavailable. Try again later. IB101
|
|
82
83
|
# - The email queue is experiencing higher than normal email volume.
|
|
83
84
|
# - Try again later.
|
|
84
|
-
'IB101' =>
|
|
85
|
+
'IB101' => Sisimai::Eb::ReRATE,
|
|
85
86
|
|
|
86
87
|
# - 554 This IP has been temporarily blocked for attempting to send too many messages
|
|
87
88
|
# containing content judged to be spam by the Internet community. IB110
|
|
@@ -90,60 +91,60 @@ module Sisimai
|
|
|
90
91
|
# - If you're not sending spam, you'll need to contact your Internet Service Provider
|
|
91
92
|
# (ISP) to see why your IP address is sending so many emails. Something in your system
|
|
92
93
|
# is causing the issue, and you'll need to troubleshoot.
|
|
93
|
-
'IB110' =>
|
|
94
|
+
'IB110' => Sisimai::Eb::ReBLOC,
|
|
94
95
|
|
|
95
96
|
# - 554 This IP has been blocked for the day, for attempting to send too many messages
|
|
96
97
|
# containing content judged to be spam by the Internet community. IB111
|
|
97
98
|
# - This IP address has attempted to send too many messages containing content judged to
|
|
98
99
|
# be spam and has been blocked for the remainder of the day.
|
|
99
|
-
'IB111' =>
|
|
100
|
+
'IB111' => Sisimai::Eb::ReBLOC,
|
|
100
101
|
|
|
101
102
|
# - 554 This IP has been temporarily blocked for attempting to mail too many invalid
|
|
102
103
|
# recipients. IB112
|
|
103
104
|
# - This IP address has attempted to email too many invalid recipients and has been
|
|
104
105
|
# blocked for an hour.
|
|
105
|
-
'IB112' =>
|
|
106
|
+
'IB112' => Sisimai::Eb::ReBLOC,
|
|
106
107
|
|
|
107
108
|
# - 554 This IP has been blocked for the day, for attempting to mail too many invalid
|
|
108
109
|
# recipients. IB113
|
|
109
110
|
# - This IP address has attempted to email too many invalid recipients and has been
|
|
110
111
|
# blocked for the remainder of the day.
|
|
111
|
-
'IB113' =>
|
|
112
|
+
'IB113' => Sisimai::Eb::ReBLOC,
|
|
112
113
|
|
|
113
114
|
# - 550 This IP has sent too many messages this hour. IB504
|
|
114
115
|
# - This IP address has reached the maximum allowed messages for that hour.
|
|
115
|
-
'IB504' =>
|
|
116
|
+
'IB504' => Sisimai::Eb::ReRATE,
|
|
116
117
|
|
|
117
118
|
# - 550 This message has exceeded the max number of messages per session. Open a new
|
|
118
119
|
# session and try again. IB510
|
|
119
120
|
# - This IP address has reached the maximum allowed messages for that session.
|
|
120
|
-
'IB510' =>
|
|
121
|
+
'IB510' => Sisimai::Eb::ReRATE,
|
|
121
122
|
|
|
122
123
|
# - 550 This IP has sent too many to too many recipients this hour. IB607
|
|
123
124
|
# - This IP address has reached the maximum allowed recipients for that hour.
|
|
124
|
-
'IB607' =>
|
|
125
|
+
'IB607' => Sisimai::Eb::ReRATE,
|
|
125
126
|
|
|
126
127
|
# Remote block list (RBL) bounces
|
|
127
128
|
# ---------------------------------------------------------------------------------------
|
|
128
129
|
# - 554 Connection refused. This IP has a poor reputation on Cloudmark Sender Intelligence
|
|
129
130
|
# (CSI). IB103
|
|
130
131
|
# - This IP address has a poor reputation on Cloudmark Sender Intelligence (CSI).
|
|
131
|
-
'IB103' =>
|
|
132
|
+
'IB103' => Sisimai::Eb::ReFAMA,
|
|
132
133
|
|
|
133
134
|
# - 554 Connection refused. This IP address is listed on the Spamhaus Block List (SBL). IB104
|
|
134
135
|
# - This IP address is listed on the Spamhaus Block List.
|
|
135
|
-
'IB104' =>
|
|
136
|
+
'IB104' => Sisimai::Eb::ReBLOC,
|
|
136
137
|
|
|
137
138
|
# - 554 Connection refused. This IP address is listed on the Exploits Block List (XBL). IB105
|
|
138
139
|
# - This IP address is listed on the Spamhaus Exploits Block List.
|
|
139
|
-
'IB105' =>
|
|
140
|
+
'IB105' => Sisimai::Eb::ReBLOC,
|
|
140
141
|
|
|
141
142
|
# - 554 Connection refused. This IP address is listed on the Policy Block List (PBL). IB106
|
|
142
143
|
# - This IP address is listed on the Spamhaus Policy Block List.
|
|
143
|
-
'IB106' =>
|
|
144
|
+
'IB106' => Sisimai::Eb::ReBLOC,
|
|
144
145
|
}.freeze
|
|
145
146
|
MessagesOf = {
|
|
146
|
-
|
|
147
|
+
Sisimai::Eb::ReAUTH => [
|
|
147
148
|
# - 550 SPF Sender Invalid - envelope rejected
|
|
148
149
|
# - 550 5.7.9: This mail has been blocked because the sender is unauthenticated
|
|
149
150
|
# - 550-5.7.26 DKIM = did not pass
|
|
@@ -151,14 +152,14 @@ module Sisimai
|
|
|
151
152
|
"this mail has been blocked because the sender is unauthenticated",
|
|
152
153
|
"dkim = did not pass",
|
|
153
154
|
],
|
|
154
|
-
|
|
155
|
+
Sisimai::Eb::ReBLOC => [
|
|
155
156
|
# - 554 RBL Reject.
|
|
156
157
|
# - This IP address was blocked from our internal RBL.
|
|
157
158
|
# - Use the link provided in the bounceback to submit a request to remove this IP address.
|
|
158
159
|
'rbl reject',
|
|
159
160
|
'www.spamhaus.org/query/bl?ip='
|
|
160
161
|
],
|
|
161
|
-
|
|
162
|
+
Sisimai::Eb::ReTIME => [
|
|
162
163
|
# - 451 Sorry, I wasn't able to establish an SMTP connection.
|
|
163
164
|
# I'm not going to try again; this message has been in the queue too long.
|
|
164
165
|
# - The recipient's email address has been misspelled or the recipient's email provider
|
|
@@ -169,7 +170,7 @@ module Sisimai
|
|
|
169
170
|
# - This could happen for several reasons.
|
|
170
171
|
'delivery timeout',
|
|
171
172
|
],
|
|
172
|
-
|
|
173
|
+
Sisimai::Eb::ReFULL => [
|
|
173
174
|
# - Account storage limit
|
|
174
175
|
# - The recipient's account has reached its storage limit and can't receive email right
|
|
175
176
|
# now.
|
|
@@ -177,45 +178,45 @@ module Sisimai
|
|
|
177
178
|
# make space for more email.
|
|
178
179
|
'account storage limit',
|
|
179
180
|
],
|
|
180
|
-
|
|
181
|
+
Sisimai::Eb::RePASS => [
|
|
181
182
|
# - 550 5.7.1: Relay access denied
|
|
182
183
|
"relay access denied",
|
|
183
184
|
],
|
|
184
|
-
|
|
185
|
+
Sisimai::Eb::ReRATE => [
|
|
185
186
|
# - 550 5.7.232 Your message can't be sent because your trial tenant has exceeded
|
|
186
187
|
# its daily limit for sending email to external recipients (tenant external recipient rate limit)
|
|
187
188
|
# - 550 5.7.233 - Your message can't be sent because your tenant exceeded its daily
|
|
188
189
|
# limit for sending email to external recipients (tenant external recipient rate limit)
|
|
189
190
|
"exceeded its daily limit",
|
|
190
191
|
],
|
|
191
|
-
|
|
192
|
+
Sisimai::Eb::ReFROM => [
|
|
192
193
|
# - 550 5.1.8 Access denied, bad outbound sender AS (42004)
|
|
193
194
|
"bad outbound sender as (42004)",
|
|
194
195
|
],
|
|
195
|
-
|
|
196
|
+
Sisimai::Eb::ReSAFE => [
|
|
196
197
|
# - 550 Please turn on SMTP Authentication in your mail client
|
|
197
198
|
"turn on smtp authentication in your mail client",
|
|
198
199
|
],
|
|
199
|
-
|
|
200
|
+
Sisimai::Eb::ReSPAM => [
|
|
200
201
|
# - 552 Message rejected for spam or virus content
|
|
201
202
|
# - The email message contains a link, attachment, or pattern caught by our filters as spam.
|
|
202
203
|
'message rejected for spam or virus content',
|
|
203
204
|
],
|
|
204
|
-
|
|
205
|
+
Sisimai::Eb::ReQUIT => [
|
|
205
206
|
# - Account disabled
|
|
206
207
|
# - The recipient account exists but its ability to receive mail was disabled.
|
|
207
208
|
# - Typically, these accounts remain permanently disabled, but you can try sending the
|
|
208
209
|
# email again later.
|
|
209
210
|
'account disabled',
|
|
210
211
|
],
|
|
211
|
-
|
|
212
|
+
Sisimai::Eb::RePROC => [
|
|
212
213
|
# - This message is looping: it already has my Delivered-To line. (#5.4.6)
|
|
213
214
|
# - The recipient account is forwarding the message in a loop.
|
|
214
215
|
# - This is oftentimes because the receiver has two addresses that forward to each
|
|
215
216
|
# other. They need to correct their forwarding settings.
|
|
216
217
|
'message is looping',
|
|
217
218
|
],
|
|
218
|
-
|
|
219
|
+
Sisimai::Eb::ReUSER => [
|
|
219
220
|
# - 550 Recipient not found
|
|
220
221
|
# - The recipient is not a valid email address.
|
|
221
222
|
# - Remove the invalid recipient from your email.
|
data/lib/sisimai/rhost/google.rb
CHANGED
|
@@ -5,8 +5,9 @@ module Sisimai
|
|
|
5
5
|
# called only Sisimai::Fact class.
|
|
6
6
|
module Google
|
|
7
7
|
class << self
|
|
8
|
+
require 'sisimai/eb'
|
|
8
9
|
MessagesOf = {
|
|
9
|
-
|
|
10
|
+
Sisimai::Eb::ReAUTH => [
|
|
10
11
|
# - 451 4.7.24 The SPF record of the sending domain has one or more suspicious entries.
|
|
11
12
|
# To protect our users from spam, mail sent from your IP address has been temporarily
|
|
12
13
|
# rate limited. For more information, go to Email sender guidelines.
|
|
@@ -96,7 +97,7 @@ module Sisimai
|
|
|
96
97
|
["421", "4.7.40", "to add a dmarc record to "],
|
|
97
98
|
["550", "5.7.40", "to add a dmarc record to "],
|
|
98
99
|
],
|
|
99
|
-
|
|
100
|
+
Sisimai::Eb::ReFAMA => [
|
|
100
101
|
# - 421 4.7.0 This message is suspicious due to the very low reputation of the sending
|
|
101
102
|
# IP address/domain. To protect our users from spam, mail sent from your IP address
|
|
102
103
|
# has been temporarily rate limited. For more information, go to Why has Gmail blocked
|
|
@@ -111,7 +112,7 @@ module Sisimai
|
|
|
111
112
|
['550', '5.7.1', 'this message is likely suspicious due to the very low reputation of the sending ip address'],
|
|
112
113
|
['550', '5.7.1', 'this message is likely suspicious due to the very low reputation of the sending domain'],
|
|
113
114
|
],
|
|
114
|
-
|
|
115
|
+
Sisimai::Eb::ReBLOC => [
|
|
115
116
|
# - 421 4.7.0 IP not in whitelist for RCPT domain, closing connection.
|
|
116
117
|
# For more information, go to Allowlists, denylists, and approved senders.
|
|
117
118
|
# https://support.google.com/a/answer/60752
|
|
@@ -150,7 +151,7 @@ module Sisimai
|
|
|
150
151
|
['550', '5.7.1', 'an unusual rate of unsolicited mail'],
|
|
151
152
|
['550', '5.7.28', 'an unusual rate of unsolicited mail'],
|
|
152
153
|
],
|
|
153
|
-
|
|
154
|
+
Sisimai::Eb::ReBODY => [
|
|
154
155
|
# - 552 5.7.0 Our system detected an illegal attachment on your message. Please visit
|
|
155
156
|
# http://mail.google.com/support/bin/answer.py?answer=6590 to review our attachment
|
|
156
157
|
# guidelines.
|
|
@@ -161,7 +162,7 @@ module Sisimai
|
|
|
161
162
|
# our message content and attachment content guidelines.
|
|
162
163
|
['552', '5.7.0', 'blocked because its content presents a potential security issue'],
|
|
163
164
|
],
|
|
164
|
-
|
|
165
|
+
Sisimai::Eb::ReSIZE => [
|
|
165
166
|
# - 552 5.2.3 Your message exceeded Google's message size limits. For more information,
|
|
166
167
|
# visit https://support.google.com/mail/answer/6584
|
|
167
168
|
['552', '5.2.3', "your message exceeded google's message size limits"],
|
|
@@ -190,7 +191,7 @@ module Sisimai
|
|
|
190
191
|
['552', '5.3.4', "exceeds google's message header size limit"],
|
|
191
192
|
['552', '5.3.4', "exceeded google's message size limits"],
|
|
192
193
|
],
|
|
193
|
-
|
|
194
|
+
Sisimai::Eb::ReTIME => [
|
|
194
195
|
# - 421 4.7.0 Connection expired, try reconnecting. For more information, go to About
|
|
195
196
|
# SMTP error messages. https://support.google.com/a/answer/3221692
|
|
196
197
|
['421', '4.7.0', 'connection expired'],
|
|
@@ -199,7 +200,7 @@ module Sisimai
|
|
|
199
200
|
# error messages. https://support.google.com/a/answer/3221692
|
|
200
201
|
['451', '4.4.2', 'timeout - closing connection'],
|
|
201
202
|
],
|
|
202
|
-
|
|
203
|
+
Sisimai::Eb::ReTTLS => [
|
|
203
204
|
# - 530 5.7.0 Must issue a STARTTLS command first. For more information, go to About
|
|
204
205
|
# SMTP error messages and review RFC 3207 specifications.
|
|
205
206
|
['530', '5.7.0', 'must issue a starttls command first'],
|
|
@@ -215,7 +216,7 @@ module Sisimai
|
|
|
215
216
|
['421', '4.7.29', 'senders to use tls/ssl for smtp'],
|
|
216
217
|
['550', '5.7.29', 'senders to use tls/ssl for smtp'],
|
|
217
218
|
],
|
|
218
|
-
|
|
219
|
+
Sisimai::Eb::ReFULL => [
|
|
219
220
|
# - 452 4.2.2 The recipient's inbox is out of storage space.
|
|
220
221
|
# Please direct the recipient to https://support.google.com/mail/?p=OverQuotaTemp
|
|
221
222
|
# - Please direct the recipient to https://support.google.com/mail/?p=OverQuotaPerm
|
|
@@ -228,13 +229,13 @@ module Sisimai
|
|
|
228
229
|
['552', '5.2.2', 'is over quota'],
|
|
229
230
|
['550', '5.7.1', 'email quota exceeded'],
|
|
230
231
|
],
|
|
231
|
-
|
|
232
|
+
Sisimai::Eb::ReINET => [
|
|
232
233
|
# - 554 5.4.6 Message exceeded 50 hops, this may indicate a mail loop.
|
|
233
234
|
# For more information, go to Gmail Help. https://support.google.com/mail/?p=MailLoop
|
|
234
235
|
['554', '5.4.6', 'message exceeded 50 hops'],
|
|
235
236
|
['554', '5.6.0', 'message exceeded 50 hops'],
|
|
236
237
|
],
|
|
237
|
-
|
|
238
|
+
Sisimai::Eb::RePASS => [
|
|
238
239
|
# - 550 5.7.0 Mail relay denied <ip-address>. Invalid credentials for relay for one of
|
|
239
240
|
# the domains in: <domain-name> (as obtained from HELO and MAIL FROM). Email is being
|
|
240
241
|
# sent from a domain or IP address which isn't registered in your Workspace account.
|
|
@@ -260,7 +261,7 @@ module Sisimai
|
|
|
260
261
|
# - https://support.google.com/mail/?p=NotAuthorizedError
|
|
261
262
|
['550', '5.7.1', 'is not authorized to send email directly to our servers'],
|
|
262
263
|
],
|
|
263
|
-
|
|
264
|
+
Sisimai::Eb::ReNRFC => [
|
|
264
265
|
# - 550 5.7.1 Messages missing a valid address in the From: header, or having no From:
|
|
265
266
|
# header, are not accepted. For more information, go to Email sender guidelines and
|
|
266
267
|
# review RFC 5322 specifications.
|
|
@@ -300,14 +301,14 @@ module Sisimai
|
|
|
300
301
|
# - https://support.google.com/mail/?p=RfcMessageNonCompliant
|
|
301
302
|
['554', '5.6.0', 'mail message is malformed'],
|
|
302
303
|
],
|
|
303
|
-
|
|
304
|
+
Sisimai::Eb::ReWONT => [
|
|
304
305
|
# - 550 5.7.1 The user or domain that you are sending to (or from) has a policy that
|
|
305
306
|
# prohibited the mail that you sent. Please contact your domain administrator for
|
|
306
307
|
# further details.
|
|
307
308
|
# For more information, visit https://support.google.com/a/answer/172179
|
|
308
309
|
['550', '5.7.1', 'you are sending to (or from) has a policy that prohibited'],
|
|
309
310
|
],
|
|
310
|
-
|
|
311
|
+
Sisimai::Eb::ReRATE => [
|
|
311
312
|
# - 450 4.2.1 The user you are trying to contact is receiving mail too quickly. Please
|
|
312
313
|
# resend your message at a later time. If the user is able to receive mail at that
|
|
313
314
|
# time, your message will be delivered.
|
|
@@ -351,14 +352,14 @@ module Sisimai
|
|
|
351
352
|
# https://support.google.com/mail/answer/188131
|
|
352
353
|
['421', '4.7.28', 'sending messages with the same message-id:'],
|
|
353
354
|
],
|
|
354
|
-
|
|
355
|
+
Sisimai::Eb::ReFROM => [
|
|
355
356
|
# - 550 5.7.0, Mail Sending denied. This error occurs if the sender account is disabled
|
|
356
357
|
# or not registered within your Google Workspace domain.
|
|
357
358
|
# - https://support.google.com/a/answer/6140680#maildenied
|
|
358
359
|
['550', '5.7.0', 'mail sending denied'],
|
|
359
360
|
['550', '5.7.1', 'unauthenticated email is not accepted'],
|
|
360
361
|
],
|
|
361
|
-
|
|
362
|
+
Sisimai::Eb::ReQPTR => [
|
|
362
363
|
# - 550 5.7.1 This message does not meet IPv6 sending guidelines regarding PTR records
|
|
363
364
|
# and authentication. For more information, go to Email sender guidelines.
|
|
364
365
|
# https://support.google.com/mail/?p=IPv6AuthError
|
|
@@ -387,7 +388,7 @@ module Sisimai
|
|
|
387
388
|
['550', '5.7.25', 'does not have a ptr record'],
|
|
388
389
|
['550', '5.7.25', 'does not match the ip address of the hostname'],
|
|
389
390
|
],
|
|
390
|
-
|
|
391
|
+
Sisimai::Eb::ReSAFE => [
|
|
391
392
|
# - 454 4.7.0 Too many login attempts, please try again later. For more information, go
|
|
392
393
|
# to Add Gmail to another email client. https://support.google.com/mail/answer/7126229
|
|
393
394
|
['454', '4.7.0', 'too many login attempts'],
|
|
@@ -419,7 +420,7 @@ module Sisimai
|
|
|
419
420
|
['535', '5.7.1', 'username and password not accepted'],
|
|
420
421
|
['535', '5.7.80', 'username and password not accepted'],
|
|
421
422
|
],
|
|
422
|
-
|
|
423
|
+
Sisimai::Eb::ReSPAM => [
|
|
423
424
|
# - 421 4.7.0 This message is suspicious due to the nature of the content or the links
|
|
424
425
|
# within. To best protect our users from spam, the message has been blocked. For more
|
|
425
426
|
# information, go to Why has Gmail blocked my messages?.
|
|
@@ -432,13 +433,13 @@ module Sisimai
|
|
|
432
433
|
# - https://support.google.com/mail/?p=UnsolicitedMessageError
|
|
433
434
|
['550', '5.7.1', 'likely unsolicited mail'],
|
|
434
435
|
],
|
|
435
|
-
|
|
436
|
+
Sisimai::Eb::ReQUIT => [
|
|
436
437
|
# - 550 5.2.1 The email account that you tried to reach is inactive.
|
|
437
438
|
# For more information, go to https://support.google.com/mail/?p=DisabledUser
|
|
438
439
|
['550', '5.2.1', 'account that you tried to reach is disabled'],
|
|
439
440
|
['550', '5.2.1', 'account that you tried to reach is inactive'],
|
|
440
441
|
],
|
|
441
|
-
|
|
442
|
+
Sisimai::Eb::ReCOMM => [
|
|
442
443
|
# - 523 5.7.10 SMTP protocol violation, no commands allowed to pipeline after STARTTLS.
|
|
443
444
|
# For more information, go to About SMTP error messages and review RFC 3207
|
|
444
445
|
# specifications.
|
|
@@ -476,7 +477,7 @@ module Sisimai
|
|
|
476
477
|
['504', '5.7.40', 'xoauth is no longer supported'],
|
|
477
478
|
['554', '5.7.0', 'too many unauthenticated commands'],
|
|
478
479
|
],
|
|
479
|
-
|
|
480
|
+
Sisimai::Eb::RePROC => [
|
|
480
481
|
# About SMTP error messages, https://support.google.com/a/answer/3221692
|
|
481
482
|
['421', '4.3.0', 'temporary system problem'],
|
|
482
483
|
['421', '4.7.0', 'temporary system problem'],
|
|
@@ -500,7 +501,7 @@ module Sisimai
|
|
|
500
501
|
# https://support.google.com/a/answer/3221692
|
|
501
502
|
['454', '4.7.0', 'cannot authenticate due to temporary system problem'],
|
|
502
503
|
],
|
|
503
|
-
|
|
504
|
+
Sisimai::Eb::ReUSER => [
|
|
504
505
|
# - 550 5.1.1 The email account that you tried to reach does not exist. Please try dou-
|
|
505
506
|
# ble-checking the recipient's email address for typos or unnecessary spaces.
|
|
506
507
|
# For more information, visit https://support.google.com/mail/answer/6596
|
data/lib/sisimai/rhost/gsuite.rb
CHANGED
|
@@ -5,11 +5,12 @@ module Sisimai
|
|
|
5
5
|
# called only from Sisimai::Fact class.
|
|
6
6
|
module GSuite
|
|
7
7
|
class << self
|
|
8
|
+
require 'sisimai/eb'
|
|
8
9
|
MessagesOf = {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
Sisimai::Eb::ReHOST => [" responded with code NXDOMAIN", "Domain name not found"],
|
|
11
|
+
Sisimai::Eb::ReINET => [" had no relevant answers.", "responded with code NXDOMAIN", "Domain name not found"],
|
|
12
|
+
Sisimai::Eb::Re00MX => ["Null MX"],
|
|
13
|
+
Sisimai::Eb::ReUSER => ["because the address couldn't be found. Check for typos or unnecessary spaces and try again."],
|
|
13
14
|
}.freeze
|
|
14
15
|
|
|
15
16
|
# Detect bounce reason from Gsuite Mail: https://www.aol.com
|
|
@@ -25,9 +26,9 @@ module Sisimai
|
|
|
25
26
|
MessagesOf.each_key do |e|
|
|
26
27
|
# Try to match the error message with message patterns defined in $MessagesOf
|
|
27
28
|
next if MessagesOf[e].none? { |a| argvs["diagnosticcode"].include?(a) }
|
|
28
|
-
next if e ==
|
|
29
|
-
next if e ==
|
|
30
|
-
next if e ==
|
|
29
|
+
next if e == Sisimai::Eb::ReINET && (statuscode == "5" || esmtpreply == "5")
|
|
30
|
+
next if e == Sisimai::Eb::ReHOST && (statuscode == "4" || statuscode == "")
|
|
31
|
+
next if e == Sisimai::Eb::ReHOST && (esmtpreply == "4" || esmtpreply == "")
|
|
31
32
|
reasontext = e
|
|
32
33
|
break
|
|
33
34
|
end
|
data/lib/sisimai/rhost/iua.rb
CHANGED
|
@@ -5,18 +5,19 @@ module Sisimai
|
|
|
5
5
|
# only Sisimai::Fact class.
|
|
6
6
|
module IUA
|
|
7
7
|
class << self
|
|
8
|
+
require 'sisimai/eb'
|
|
8
9
|
ErrorCodes = {
|
|
9
10
|
# https://mail.i.ua/err/$(CODE)
|
|
10
|
-
'1' =>
|
|
11
|
-
'2' =>
|
|
12
|
-
'3' =>
|
|
13
|
-
'4' =>
|
|
14
|
-
'5' =>
|
|
15
|
-
'6' =>
|
|
16
|
-
'7' =>
|
|
17
|
-
'8' =>
|
|
18
|
-
'9' =>
|
|
19
|
-
'10' =>
|
|
11
|
+
'1' => Sisimai::Eb::RePASS, # The use of SMTP as mail gate is forbidden.
|
|
12
|
+
'2' => Sisimai::Eb::ReUSER, # User is not found.
|
|
13
|
+
'3' => Sisimai::Eb::ReQUIT, # Mailbox was not used for more than 3 months
|
|
14
|
+
'4' => Sisimai::Eb::ReFULL, # Mailbox is full.
|
|
15
|
+
'5' => Sisimai::Eb::ReRATE, # Letter sending limit is exceeded.
|
|
16
|
+
'6' => Sisimai::Eb::RePASS, # Use SMTP of your provider to send mail.
|
|
17
|
+
'7' => Sisimai::Eb::ReBLOC, # Wrong value if command HELO/EHLO parameter.
|
|
18
|
+
'8' => Sisimai::Eb::ReFROM, # Couldn't check sender address.
|
|
19
|
+
'9' => Sisimai::Eb::ReBLOC, # IP-address of the sender is blacklisted.
|
|
20
|
+
'10' => Sisimai::Eb::ReFILT # Not in the list Mail address management.
|
|
20
21
|
}.freeze
|
|
21
22
|
|
|
22
23
|
# Detect bounce reason from https://www.i.ua/
|
data/lib/sisimai/rhost/kddi.rb
CHANGED
|
@@ -5,9 +5,10 @@ module Sisimai
|
|
|
5
5
|
# This class is called only Sisimai::Fact class.
|
|
6
6
|
module KDDI
|
|
7
7
|
class << self
|
|
8
|
+
require 'sisimai/eb'
|
|
8
9
|
MessagesOf = {
|
|
9
|
-
|
|
10
|
-
|
|
10
|
+
Sisimai::Eb::ReFILT => '550 : user unknown', # The response was: 550 : User unknown
|
|
11
|
+
Sisimai::Eb::ReUSER => '>: user unknown', # The response was: 550 <...>: User unknown
|
|
11
12
|
}.freeze
|
|
12
13
|
|
|
13
14
|
# Detect bounce reason from au (KDDI)
|
|
@@ -5,15 +5,16 @@ module Sisimai
|
|
|
5
5
|
# called only from Sisimai::Fact class.
|
|
6
6
|
module MessageLabs
|
|
7
7
|
class << self
|
|
8
|
+
require 'sisimai/eb'
|
|
8
9
|
MessagesOf = {
|
|
9
|
-
|
|
10
|
+
Sisimai::Eb::ReAUTH => [
|
|
10
11
|
# - 553 DMARC domain authentication fail
|
|
11
12
|
# - https://knowledge.broadcom.com/external/article/175407
|
|
12
13
|
# An email has failed delivery and the reason provided in Track and Trace is due
|
|
13
14
|
# to SPF Record. 553-SPF (Sender Policy Framework) domain authentication fail.
|
|
14
15
|
"domain authentication fail",
|
|
15
16
|
],
|
|
16
|
-
|
|
17
|
+
Sisimai::Eb::ReFAMA => [
|
|
17
18
|
# - https://knowledge.broadcom.com/external/article/164955
|
|
18
19
|
# "501 Connection rejected by policy [7.7]" 20805, please visit www.messagelabs.com/support
|
|
19
20
|
# for more details about this error message.
|
|
@@ -24,7 +25,7 @@ module Sisimai
|
|
|
24
25
|
# Symantec Email Security.cloud customer:
|
|
25
26
|
"Connection rejected by policy",
|
|
26
27
|
],
|
|
27
|
-
|
|
28
|
+
Sisimai::Eb::ReBLOC => [
|
|
28
29
|
# - https://knowledge.broadcom.com/external/article/165165
|
|
29
30
|
# You are sending an email to a domain protected by the Symantec Email Security.Cloud
|
|
30
31
|
# service and are receiving a non delivery receipt (NDR) stating the email delivery failed.
|
|
@@ -55,14 +56,14 @@ module Sisimai
|
|
|
55
56
|
"your IP address (ip-addr) has been blocked",
|
|
56
57
|
"your email address (addr) has been blocked",
|
|
57
58
|
],
|
|
58
|
-
|
|
59
|
+
Sisimai::Eb::ReBODY => [
|
|
59
60
|
# - 553 Stray linefeeds in message (#5.6.2)
|
|
60
61
|
# This error message happens because we strictly enforce the Internet Message Format
|
|
61
62
|
# standard RFC 5322 (and its predecessor RFC 2822) which state, "CR and LF MUST
|
|
62
63
|
# only occur together as CRLF; they MUST NOT appear independently in the body.
|
|
63
64
|
"Stray linefeeds in message",
|
|
64
65
|
],
|
|
65
|
-
|
|
66
|
+
Sisimai::Eb::ReTTLS => [
|
|
66
67
|
# - https://knowledge.broadcom.com/external/article/162152
|
|
67
68
|
# You are sending to a domain protected by the Symantec Email Security.cloud
|
|
68
69
|
# service, or you are a customer subscribed to Symantec Email Security.cloud
|
|
@@ -73,7 +74,7 @@ module Sisimai
|
|
|
73
74
|
# in the Delivered column and "Boundary Encryption" in the "Service" column.
|
|
74
75
|
"TLS/SSLv3 Connection required",
|
|
75
76
|
],
|
|
76
|
-
|
|
77
|
+
Sisimai::Eb::RePASS => [
|
|
77
78
|
# - https://knowledge.broadcom.com/external/article/162137
|
|
78
79
|
# You received a Non-Delivery Report (NDR) for email sent through the Symantec
|
|
79
80
|
# Email Security.cloud infrastructure, with the message "You are trying to use
|
|
@@ -81,7 +82,7 @@ module Sisimai
|
|
|
81
82
|
# to let you [IP, address] do this."
|
|
82
83
|
" as a relay, ",
|
|
83
84
|
],
|
|
84
|
-
|
|
85
|
+
Sisimai::Eb::ReNRFC => [
|
|
85
86
|
# - The format of your message did not comply with RFC 2822.
|
|
86
87
|
# - Contact your IT administrator or ISP.
|
|
87
88
|
# - If the problem persists, contact the recipient by other means (e.g. phone).
|
|
@@ -91,7 +92,7 @@ module Sisimai
|
|
|
91
92
|
"550 Requested action aborted [4]",
|
|
92
93
|
"has detected that this message is not RFC 5322",
|
|
93
94
|
],
|
|
94
|
-
|
|
95
|
+
Sisimai::Eb::ReRATE => [
|
|
95
96
|
# - https://knowledge.broadcom.com/external/article/385809
|
|
96
97
|
# Email Security Cloud is attempting to deliver the email and recipient MTA is
|
|
97
98
|
# responding "452 Too many recipients received this hour".
|
|
@@ -103,7 +104,7 @@ module Sisimai
|
|
|
103
104
|
"Too many recipients received this hour",
|
|
104
105
|
"too many messages",
|
|
105
106
|
],
|
|
106
|
-
|
|
107
|
+
Sisimai::Eb::ReFROM => [
|
|
107
108
|
# - 550 sender envelope domain not allowed for sender IP address (#5.1.8)
|
|
108
109
|
# This error occurs when a sender attempts to send an email and any one of the
|
|
109
110
|
# following are true:
|
|
@@ -139,8 +140,8 @@ module Sisimai
|
|
|
139
140
|
"your email address has been blacklisted",
|
|
140
141
|
"your domain has been blacklisted",
|
|
141
142
|
],
|
|
142
|
-
|
|
143
|
-
|
|
143
|
+
Sisimai::Eb::ReSAFE => ["Please turn on SMTP Authentication in your mail client"],
|
|
144
|
+
Sisimai::Eb::ReSPAM => [
|
|
144
145
|
# - https://knowledge.broadcom.com/external/article/173867
|
|
145
146
|
# Legitimate email, either outbound or inbound, is incorrectly flagged as spam
|
|
146
147
|
# (false positive) by Email Security.cloud. This email may have the following errors:
|
|
@@ -149,7 +150,7 @@ module Sisimai
|
|
|
149
150
|
"Message Filtered",
|
|
150
151
|
"filtered by Outbound scanning",
|
|
151
152
|
],
|
|
152
|
-
|
|
153
|
+
Sisimai::Eb::ReUSER => [
|
|
153
154
|
# - https://knowledge.broadcom.com/external/article/165163
|
|
154
155
|
# When sending email to a user on the Symantec Email Security.cloud service, the
|
|
155
156
|
# message is rejected. The sender receives a non-delivery email with a 500 series
|