sisimai 4.22.1 → 4.22.2
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of sisimai might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/ChangeLog.md +21 -0
- data/README-JA.md +2 -2
- data/README.md +2 -2
- data/lib/sisimai.rb +2 -3
- data/lib/sisimai/address.rb +20 -40
- data/lib/sisimai/arf.rb +4 -4
- data/lib/sisimai/bite.rb +1 -0
- data/lib/sisimai/bite/email.rb +3 -4
- data/lib/sisimai/bite/email/activehunter.rb +7 -7
- data/lib/sisimai/bite/email/amazonses.rb +14 -14
- data/lib/sisimai/bite/email/amazonworkmail.rb +7 -7
- data/lib/sisimai/bite/email/aol.rb +8 -8
- data/lib/sisimai/bite/email/apachejames.rb +7 -7
- data/lib/sisimai/bite/email/bigfoot.rb +7 -7
- data/lib/sisimai/bite/email/biglobe.rb +7 -7
- data/lib/sisimai/bite/email/courier.rb +9 -9
- data/lib/sisimai/bite/email/domino.rb +8 -8
- data/lib/sisimai/bite/email/einsundeins.rb +7 -7
- data/lib/sisimai/bite/email/exchange2003.rb +10 -10
- data/lib/sisimai/bite/email/exchange2007.rb +10 -10
- data/lib/sisimai/bite/email/exim.rb +18 -19
- data/lib/sisimai/bite/email/ezweb.rb +9 -11
- data/lib/sisimai/bite/email/facebook.rb +22 -23
- data/lib/sisimai/bite/email/gmx.rb +7 -7
- data/lib/sisimai/bite/email/google.rb +22 -25
- data/lib/sisimai/bite/email/gsuite.rb +17 -19
- data/lib/sisimai/bite/email/imailserver.rb +13 -13
- data/lib/sisimai/bite/email/interscanmss.rb +7 -7
- data/lib/sisimai/bite/email/kddi.rb +7 -7
- data/lib/sisimai/bite/email/mailfoundry.rb +6 -6
- data/lib/sisimai/bite/email/mailmarshalsmtp.rb +13 -13
- data/lib/sisimai/bite/email/mailru.rb +10 -10
- data/lib/sisimai/bite/email/mcafee.rb +7 -7
- data/lib/sisimai/bite/email/messagelabs.rb +9 -9
- data/lib/sisimai/bite/email/messagingserver.rb +8 -8
- data/lib/sisimai/bite/email/mfilter.rb +7 -7
- data/lib/sisimai/bite/email/mxlogic.rb +9 -9
- data/lib/sisimai/bite/email/notes.rb +12 -12
- data/lib/sisimai/bite/email/office365.rb +14 -15
- data/lib/sisimai/bite/email/opensmtpd.rb +7 -7
- data/lib/sisimai/bite/email/outlook.rb +9 -9
- data/lib/sisimai/bite/email/postfix.rb +13 -13
- data/lib/sisimai/bite/email/qmail.rb +9 -9
- data/lib/sisimai/bite/email/receivingses.rb +9 -9
- data/lib/sisimai/bite/email/sendgrid.rb +9 -9
- data/lib/sisimai/bite/email/sendmail.rb +7 -7
- data/lib/sisimai/bite/email/surfcontrol.rb +7 -7
- data/lib/sisimai/bite/email/userdefined.rb +7 -7
- data/lib/sisimai/bite/email/v5sendmail.rb +21 -22
- data/lib/sisimai/bite/email/verizon.rb +8 -8
- data/lib/sisimai/bite/email/x1.rb +6 -6
- data/lib/sisimai/bite/email/x2.rb +6 -6
- data/lib/sisimai/bite/email/x3.rb +6 -6
- data/lib/sisimai/bite/email/x4.rb +9 -9
- data/lib/sisimai/bite/email/x5.rb +6 -6
- data/lib/sisimai/bite/email/yahoo.rb +7 -7
- data/lib/sisimai/bite/email/yandex.rb +7 -7
- data/lib/sisimai/bite/email/zoho.rb +8 -8
- data/lib/sisimai/bite/json.rb +10 -11
- data/lib/sisimai/bite/json/amazonses.rb +11 -11
- data/lib/sisimai/bite/json/sendgrid.rb +67 -17
- data/lib/sisimai/data.rb +19 -21
- data/lib/sisimai/data/json.rb +3 -3
- data/lib/sisimai/data/yaml.rb +3 -3
- data/lib/sisimai/datetime.rb +18 -21
- data/lib/sisimai/mail.rb +1 -1
- data/lib/sisimai/mail/stdin.rb +2 -2
- data/lib/sisimai/mda.rb +4 -4
- data/lib/sisimai/message.rb +1 -1
- data/lib/sisimai/message/email.rb +32 -35
- data/lib/sisimai/message/json.rb +3 -3
- data/lib/sisimai/mime.rb +5 -6
- data/lib/sisimai/order/email.rb +11 -11
- data/lib/sisimai/order/json.rb +3 -3
- data/lib/sisimai/reason.rb +2 -2
- data/lib/sisimai/reason/userunknown.rb +4 -5
- data/lib/sisimai/rfc3464.rb +14 -16
- data/lib/sisimai/rfc3834.rb +5 -5
- data/lib/sisimai/rfc5322.rb +2 -2
- data/lib/sisimai/rhost.rb +6 -5
- data/lib/sisimai/rhost/exchangeonline.rb +1 -1
- data/lib/sisimai/rhost/godaddy.rb +87 -0
- data/lib/sisimai/rhost/googleapps.rb +1 -1
- data/lib/sisimai/smtp/error.rb +21 -27
- data/lib/sisimai/smtp/status.rb +2 -2
- data/lib/sisimai/string.rb +7 -7
- data/lib/sisimai/version.rb +1 -1
- data/set-of-emails/jsonobj/json-sendgrid-12.json +1 -0
- data/set-of-emails/jsonobj/json-sendgrid-13.json +1 -0
- data/set-of-emails/jsonobj/json-sendgrid-14.json +1 -0
- data/set-of-emails/jsonobj/json-sendgrid-15.json +1 -0
- data/set-of-emails/jsonobj/json-sendgrid-16.json +1 -0
- data/set-of-emails/jsonobj/json-sendgrid-17.json +1 -0
- data/set-of-emails/maildir/bsd/rhost-godaddy-01.eml +83 -0
- data/set-of-emails/maildir/bsd/rhost-godaddy-02.eml +69 -0
- metadata +12 -6
- data/lib/sisimai/ced.rb +0 -48
- data/lib/sisimai/msp.rb +0 -39
- data/lib/sisimai/mta.rb +0 -39
data/lib/sisimai/rfc5322.rb
CHANGED
@@ -16,7 +16,7 @@ module Sisimai
|
|
16
16
|
'To', 'Delivered-To', 'Forward-Path', 'Envelope-To',
|
17
17
|
'X-Envelope-To', 'Resent-To', 'Apparently-To'
|
18
18
|
],
|
19
|
-
}
|
19
|
+
}.freeze
|
20
20
|
|
21
21
|
build_regular_expressions = lambda do
|
22
22
|
# See http://www.ietf.org/rfc/rfc5322.txt
|
@@ -164,7 +164,7 @@ module Sisimai
|
|
164
164
|
|
165
165
|
else
|
166
166
|
# hostname
|
167
|
-
e = e.delete('
|
167
|
+
e = e.delete('()')
|
168
168
|
namelist << e
|
169
169
|
end
|
170
170
|
end
|
data/lib/sisimai/rhost.rb
CHANGED
@@ -7,9 +7,10 @@ module Sisimai
|
|
7
7
|
class << self
|
8
8
|
# Imported from p5-Sisimail/lib/Sisimai/Rhost.pm
|
9
9
|
RhostClass = {
|
10
|
-
%r/\Aaspmx[.]l[.]google[.]com\z/
|
11
|
-
%r/[.]protection[.]outlook[.]com\z/
|
12
|
-
|
10
|
+
%r/\Aaspmx[.]l[.]google[.]com\z/ => 'GoogleApps',
|
11
|
+
%r/[.]protection[.]outlook[.]com\z/ => 'ExchangeOnline',
|
12
|
+
%r/\A(?:smtp|mailstore1)[.]secureserver[.]net\z/ => 'GoDaddy',
|
13
|
+
}.freeze
|
13
14
|
|
14
15
|
# Retrun the list of remote hosts Sisimai support
|
15
16
|
# @return [Array] Remote host list
|
@@ -17,7 +18,7 @@ module Sisimai
|
|
17
18
|
return RhostClass.keys
|
18
19
|
end
|
19
20
|
|
20
|
-
# The value of "rhost" is listed in
|
21
|
+
# The value of "rhost" is listed in RhostClass or not
|
21
22
|
# @param [String] argvs Remote host name
|
22
23
|
# @return [True,False] True: matched
|
23
24
|
# False: did not match
|
@@ -50,7 +51,7 @@ module Sisimai
|
|
50
51
|
modulename = ''
|
51
52
|
|
52
53
|
RhostClass.each_key do |e|
|
53
|
-
# Try to match with each key of
|
54
|
+
# Try to match with each key of RhostClass
|
54
55
|
next unless remotehost =~ e
|
55
56
|
modulename = 'Sisimai::Rhost::' + RhostClass[e]
|
56
57
|
rhostclass = modulename.gsub('::', '/').downcase
|
@@ -0,0 +1,87 @@
|
|
1
|
+
module Sisimai
|
2
|
+
module Rhost
|
3
|
+
# Sisimai::Rhost detects the bounce reason from the content of Sisimai::Data
|
4
|
+
# object as an argument of get() method when the value of "rhost" of the object
|
5
|
+
# is "*.secureserver.net". This class is called only Sisimai::Data class.
|
6
|
+
module GoDaddy
|
7
|
+
class << self
|
8
|
+
# Imported from p5-Sisimail/lib/Sisimai/Rhost/GoDaddy.pm
|
9
|
+
# https://www.godaddy.com/help/what-does-my-email-bounceback-mean-3568
|
10
|
+
CodeTable = {
|
11
|
+
:IB103 => 'blocked', # 554 Connection refused. This IP has a poor reputation on Cloudmark Sender Intelligence (CSI). IB103
|
12
|
+
:IB104 => 'blocked', # 554 Connection refused. This IP is listed on the Spamhaus Block List (SBL). IB104
|
13
|
+
:IB105 => 'blocked', # 554 Connection refused. This IP is listed on the Exploits Block List (XBL). IB105
|
14
|
+
:IB106 => 'blocked', # 554 Connection refused. This IP is listed on the Policy Block List (PBL). IB106
|
15
|
+
:IB007 => 'toomanyconn', # 421 Connection refused, too many sessions from This IP. Please lower the number of concurrent sessions. IB007
|
16
|
+
:IB101 => 'expired', # 421 Server temporarily unavailable. Try again later. IB101
|
17
|
+
:IB108 => 'blocked', # 421 Temporarily rejected. Reverse DNS for this IP failed. IB108
|
18
|
+
:IB110 => 'blocked', # 554 This IP has been temporarily blocked for attempting to send too many messages containing content judged to be spam by the Internet community. IB110
|
19
|
+
:IB111 => 'blocked', # 554 This IP has been blocked for the day, for attempting to send too many messages containing content judged to be spam by the Internet community. IB111
|
20
|
+
:IB112 => 'blocked', # 554 This IP has been temporarily blocked for attempting to mail too many invalid recipients. IB112
|
21
|
+
:IB113 => 'blocked', # 554 This IP has been blocked for the day, for attempting to mail too many invalid recipients. IB113
|
22
|
+
:IB212 => 'spamdetected', # 552 This message has been rejected due to content judged to be spam by the Internet community. IB212
|
23
|
+
:IB401 => 'securityerror', # 535 Authentication not allowed on IBSMTP Servers. IB401
|
24
|
+
:IB501 => 'rejected', # 550 holly@coolexample.com Blank From: addresses are not allowed. Please provide a valid From. IB501
|
25
|
+
:IB502 => 'rejected', # 550 holly@coolexample.com IP addresses are not allowed as a From: Address. Please provide a valid From. IB502
|
26
|
+
:IB504 => 'toomanyconn', # 550 This IP has sent too many messages this hour. IB504
|
27
|
+
:IB506 => 'rejected', # 550 coolexample.com From: Domain is invalid. Please provide a valid From: IB506
|
28
|
+
:IB508 => 'rejected', # 550 holly@coolexample.com Invalid SPF record. Please inspect your SPF settings, and try again. IB508
|
29
|
+
:IB510 => 'toomanyconn', # 550 This message has exceeded the max number of messages per session. Please open a new session and try again. IB510
|
30
|
+
:IB607 => 'toomanyconn', # 550 This IP has sent too many to too many recipients this hour. IB607
|
31
|
+
:IB705 => 'virusdetected', # 552 Virus infected message rejected. IB705
|
32
|
+
}.freeze
|
33
|
+
|
34
|
+
MesgTable = {
|
35
|
+
:blocked => [
|
36
|
+
%r{\A553 http://www[.]spamhaus[.]org/query/bl[?]ip=.+},
|
37
|
+
%r/\A554 RBL Reject[.]/,
|
38
|
+
],
|
39
|
+
:expired => [
|
40
|
+
%r/Delivery timeout/,
|
41
|
+
%r/451 Sorry, I wasn't able to establish an SMTP connection[.]/,
|
42
|
+
],
|
43
|
+
:mailboxfull => [
|
44
|
+
%r/Account storage limit/,
|
45
|
+
],
|
46
|
+
:userunknown => [
|
47
|
+
%r/Account does not exist/,
|
48
|
+
%r/550 Recipient not found[.]/,
|
49
|
+
],
|
50
|
+
:suspend => [
|
51
|
+
%r/Account disabled/,
|
52
|
+
],
|
53
|
+
}.freeze
|
54
|
+
|
55
|
+
# Detect bounce reason from GoDaddy
|
56
|
+
# @param [Sisimai::Data] argvs Parsed email object
|
57
|
+
# @return [String] The bounce reason for GoDaddy
|
58
|
+
# @see https://www.godaddy.com/help/what-does-my-email-bounceback-mean-3568
|
59
|
+
def get(argvs)
|
60
|
+
return nil unless argvs
|
61
|
+
return nil unless argvs.is_a? Sisimai::Data
|
62
|
+
return argvs.reason if argvs.reason.size > 0
|
63
|
+
|
64
|
+
statusmesg = argvs.diagnosticcode
|
65
|
+
reasontext = ''
|
66
|
+
|
67
|
+
if cv = statusmesg.match(/\s(IB\d{3})\b/)
|
68
|
+
# 192.0.2.22 has sent to too many recipients this hour. IB607 ...
|
69
|
+
reasontext = CodeTable[cv[1].to_sym]
|
70
|
+
else
|
71
|
+
# 553 http://www.spamhaus.org/query/bl?ip=192.0.0.222
|
72
|
+
MesgTable.each_key do |e|
|
73
|
+
MesgTable[e].each do |f|
|
74
|
+
next unless statusmesg =~ f
|
75
|
+
reasontext = e.to_s
|
76
|
+
break
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
return reasontext
|
81
|
+
end
|
82
|
+
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
87
|
+
|
data/lib/sisimai/smtp/error.rb
CHANGED
@@ -16,7 +16,7 @@ module Sisimai
|
|
16
16
|
systemfull toomanyconn virusdetected
|
17
17
|
|,
|
18
18
|
:hard => %w|hasmoved hostunknown userunknown|
|
19
|
-
}
|
19
|
+
}.freeze
|
20
20
|
|
21
21
|
# Permanent error or not
|
22
22
|
# @param [String] argv1 String including SMTP Status code
|
@@ -49,19 +49,13 @@ module Sisimai
|
|
49
49
|
end
|
50
50
|
else
|
51
51
|
# Check with regular expression
|
52
|
-
if argv1 =~ /(?:temporar|persistent)/i
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
else
|
61
|
-
# did not find information to decide that it is a soft bounce
|
62
|
-
# or a hard bounce.
|
63
|
-
getchecked = nil
|
64
|
-
end
|
52
|
+
getchecked = if argv1 =~ /(?:temporar|persistent)/i
|
53
|
+
# Temporary failure
|
54
|
+
false
|
55
|
+
elsif argv1 =~ /permanent/i
|
56
|
+
# Permanently failure
|
57
|
+
true
|
58
|
+
end
|
65
59
|
end
|
66
60
|
|
67
61
|
return getchecked
|
@@ -85,15 +79,17 @@ module Sisimai
|
|
85
79
|
softorhard = ''
|
86
80
|
|
87
81
|
elsif argv1 == 'onhold' || argv1 == 'undefined'
|
88
|
-
# Check with the value of D.S.N. in
|
82
|
+
# Check with the value of D.S.N. in argv2
|
89
83
|
getchecked = Sisimai::SMTP::Error.is_permanent(argv2)
|
90
84
|
|
91
85
|
if getchecked.nil?
|
92
|
-
# The value is not defined (returned undef)
|
93
86
|
softorhard = ''
|
94
87
|
else
|
95
|
-
|
96
|
-
|
88
|
+
softorhard = if getchecked
|
89
|
+
'hard'
|
90
|
+
else
|
91
|
+
'soft'
|
92
|
+
end
|
97
93
|
end
|
98
94
|
|
99
95
|
elsif argv1 == 'notaccept'
|
@@ -104,13 +100,13 @@ module Sisimai
|
|
104
100
|
statuscode = Sisimai::SMTP::Reply.find(argv2) if statuscode.empty?
|
105
101
|
classvalue = statuscode[0, 1].to_i
|
106
102
|
|
107
|
-
if classvalue == 4
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
103
|
+
softorhard = if classvalue == 4
|
104
|
+
# Deal as a "soft bounce"
|
105
|
+
'soft'
|
106
|
+
else
|
107
|
+
# 5 or 0, deal as a "hard bounce"
|
108
|
+
'hard'
|
109
|
+
end
|
114
110
|
else
|
115
111
|
# "notaccept" is a hard bounce
|
116
112
|
softorhard = 'hard'
|
@@ -135,7 +131,6 @@ module Sisimai
|
|
135
131
|
end
|
136
132
|
end
|
137
133
|
|
138
|
-
sortorhard = '' if softorhard.nil?
|
139
134
|
return softorhard
|
140
135
|
end
|
141
136
|
|
@@ -143,4 +138,3 @@ module Sisimai
|
|
143
138
|
end
|
144
139
|
end
|
145
140
|
end
|
146
|
-
|
data/lib/sisimai/smtp/status.rb
CHANGED
@@ -644,7 +644,7 @@ module Sisimai
|
|
644
644
|
:'5.7.25' => 'blocked', # Reverse DNS validation failed
|
645
645
|
:'5.7.26' => 'securityerror', # Multiple authentication checks failed
|
646
646
|
:'5.7.27' => 'rejected', # Sender address has null MX
|
647
|
-
}
|
647
|
+
}.freeze
|
648
648
|
|
649
649
|
InternalCode = {
|
650
650
|
:temporary => {
|
@@ -700,7 +700,7 @@ module Sisimai
|
|
700
700
|
:undefined => '5.0.900',
|
701
701
|
:virusdetected => '5.0.971',
|
702
702
|
},
|
703
|
-
}
|
703
|
+
}.freeze
|
704
704
|
|
705
705
|
# Convert from the reason string to the internal status code
|
706
706
|
# @param [String] argv1 Reason name
|
data/lib/sisimai/string.rb
CHANGED
@@ -110,13 +110,13 @@ module Sisimai
|
|
110
110
|
|
111
111
|
begin
|
112
112
|
# Try to convert the string to UTF-8
|
113
|
-
if encodefrom
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
113
|
+
getencoded = if encodefrom
|
114
|
+
# String#encode('UTF-8', <FROM>)
|
115
|
+
argv1.encode('UTF-8', encodefrom)
|
116
|
+
else
|
117
|
+
# Force encoding to UTF-8
|
118
|
+
argv1.force_encoding('UTF-8')
|
119
|
+
end
|
120
120
|
rescue
|
121
121
|
# Unknown encoding name or failed to encode
|
122
122
|
getencoded = argv1.force_encoding('UTF-8')
|
data/lib/sisimai/version.rb
CHANGED
@@ -0,0 +1 @@
|
|
1
|
+
[{"ip":"192.0.2.22","status":"5.2.2","sg_event_id":"S4wr46YHS0qr3BKhawTQjQ","reason":"550 5.2.2 <mailboxfull@example.jp>... Mailbox Full ","sg_message_id":"03_Wof6nRbqqzxRvLpZbfw.filter0017p3mdw1-11399-59ADB335-16.0","tls":0,"event":"bounce","email":"mailboxfull@example.jp","timestamp":1504555832,"smtp-id":"<201709042010.v84KAQ5T032530@example.nyaan.jp>","type":"blocked"}]
|
@@ -0,0 +1 @@
|
|
1
|
+
[{"ip":"192.0.2.22","response":"250 2.0.0 OK 1504548007 y202si6984453itc.115 - gsmtp ","sg_event_id":"9DQrtMYCQcqhzCcaM1dDcA","sg_message_id":"xOljzpupQQWM0kNVSTWCJw.filter0022p3mdw1-18488-59AD94A6-1C.0","tls":1,"event":"delivered","email":"kijitora@example.com","timestamp":1504548007,"smtp-id":"<9454cba873d4ff07@localhost>"}]
|
@@ -0,0 +1 @@
|
|
1
|
+
[{"ip":"192.0.2.22","status":"5.7.13","sg_event_id":"G9n4tny6SbOd2OOIwR4WWQ","reason":"525 5.7.13 Disabled recipient address ","sg_message_id":"1WmUfrSfRTK-rqq2dbmjbg.filter0005p3mdw1-16436-59ADC425-15.0","tls":0,"event":"bounce","email":"kijitora@example.jp","timestamp":1504560168,"smtp-id":"<201709042122.v84LMhK6032741@example.nyaan.jp>","type":"blocked"}]
|
@@ -0,0 +1 @@
|
|
1
|
+
[{"email":"kijitora@example.com","timestamp":1504837383,"sg_message_id":"6_hrAeKvTDaB5ynBI2nbnQ.filter0002p3las1-27574-59B1FDA3-19.0","sg_event_id":"o70uHqbMSXOaaoveMZIjjg","event":"spamreport"}]
|
@@ -0,0 +1 @@
|
|
1
|
+
[{"email":"kijitora@outlook.example.com","timestamp":1504887024,"sg_message_id":"X4B3sZa5RVGb40R5f6xvXw.filter0022p3las1-25394-59B1FDA9-F.0","sg_event_id":"odvDkblzSzmMErbelzZiDQ","event":"spamreport"}]
|
@@ -0,0 +1 @@
|
|
1
|
+
[{"email":"kijitora@mail.example.ru","timestamp":1504888615,"sg_message_id":"XFF5SV20RXGJQFfQCB6Pfg.filter0021p3las1-20183-59B2C682-2C.0","sg_event_id":"5zlPaGPlRyy6bdJc3vKTpQ","event":"spamreport"}]
|
@@ -0,0 +1,83 @@
|
|
1
|
+
From MAILER-DAEMON Tue Sep 19 12:00:02 2017
|
2
|
+
Return-Path: <>
|
3
|
+
X-Original-To: postmaster@sender.com
|
4
|
+
Delivered-To: postmaster@sender.com
|
5
|
+
Received: from mx.sender.com (mx.sender.com [192.0.2.1])
|
6
|
+
by mail.sender.com (Postfix) with ESMTP id 084521680B5A
|
7
|
+
for <postmaster@sender.com>; Tue, 19 Sep 2017 12:00:02 -0700 (PDT)
|
8
|
+
Received: by mx.sender.com (Postfix)
|
9
|
+
id F1F29402F2229; Tue, 19 Sep 2017 12:00:01 -0700 (PDT)
|
10
|
+
Date: Tue, 19 Sep 2017 12:00:01 -0700 (PDT)
|
11
|
+
From: MAILER-DAEMON@mx.sender.com (Mail Delivery System)
|
12
|
+
Subject: Undelivered Mail Returned to Sender
|
13
|
+
To: postmaster@sender.com
|
14
|
+
Auto-Submitted: auto-replied
|
15
|
+
MIME-Version: 1.0
|
16
|
+
Content-Type: multipart/report; report-type=delivery-status;
|
17
|
+
boundary="DA209402F1B99.1505847601/mx.sender.com"
|
18
|
+
Content-Transfer-Encoding: 8bit
|
19
|
+
Message-Id: <20170919190001.F1F29402F2229@mx.sender.com>
|
20
|
+
|
21
|
+
This is a MIME-encapsulated message.
|
22
|
+
|
23
|
+
--DA209402F1B99.1505847601/mx.sender.com
|
24
|
+
Content-Description: Notification
|
25
|
+
Content-Type: text/plain; charset=us-ascii
|
26
|
+
|
27
|
+
This is the mail system at host mx.sender.com.
|
28
|
+
|
29
|
+
I'm sorry to have to inform you that your message could not
|
30
|
+
be delivered to one or more recipients. It's attached below.
|
31
|
+
|
32
|
+
For further assistance, please send mail to postmaster.
|
33
|
+
|
34
|
+
If you do so, please include this problem report. You can
|
35
|
+
delete your own text from the attached returned message.
|
36
|
+
|
37
|
+
The mail system
|
38
|
+
|
39
|
+
<original-recipient@example.com>: host smtp.secureserver.net[72.167.238.29] said: 550
|
40
|
+
5.1.1 <original-recipient@example.com> - 192.0.2.0 has sent to too many
|
41
|
+
recipients this hour. IB607 <http://x.co/rlbounce> (in reply to RCPT TO
|
42
|
+
command)
|
43
|
+
|
44
|
+
--DA209402F1B99.1505847601/mx.sender.com
|
45
|
+
Content-Description: Delivery report
|
46
|
+
Content-Type: message/delivery-status
|
47
|
+
|
48
|
+
Reporting-MTA: dns; mx.sender.com
|
49
|
+
X-Postfix-Queue-ID: DA209402F1B99
|
50
|
+
X-Postfix-Sender: rfc822; postmaster@sender.com
|
51
|
+
Arrival-Date: Tue, 19 Sep 2017 11:59:55 -0700 (PDT)
|
52
|
+
|
53
|
+
Final-Recipient: rfc822; original-recipient@example.com
|
54
|
+
Original-Recipient: rfc822;original-recipient@example.com
|
55
|
+
Action: failed
|
56
|
+
Status: 5.1.1
|
57
|
+
Remote-MTA: dns; smtp.secureserver.net
|
58
|
+
Diagnostic-Code: smtp; 550 5.1.1 <original-recipient@example.com> - 192.0.2.1 has
|
59
|
+
sent to too many recipients this hour. IB607 <http://x.co/rlbounce>
|
60
|
+
|
61
|
+
--DA209402F1B99.1505847601/mx.sender.com
|
62
|
+
Content-Description: Undelivered Message
|
63
|
+
Content-Type: message/rfc822
|
64
|
+
Content-Transfer-Encoding: 8bit
|
65
|
+
|
66
|
+
Return-Path: <postmaster@sender.com>
|
67
|
+
Received: from localhost.localdomain (mx1.sender.com [192.0.2.2])
|
68
|
+
by mx.sender.com (Postfix) with ESMTP id DA209402F1B99
|
69
|
+
for <original-recipient@example.com>; Tue, 19 Sep 2017 11:59:55 -0700 (PDT)
|
70
|
+
Content-Disposition: inline
|
71
|
+
Content-Transfer-Encoding: 8bit
|
72
|
+
Content-Type: text/html
|
73
|
+
MIME-Version: 1.0
|
74
|
+
X-Mailer: MIME::Lite 3.030 (F2.84; T2.13; A2.12; B3.13; Q3.13)
|
75
|
+
Date: Tue, 19 Sep 2017 11:59:55 -0700
|
76
|
+
X-Report-Abuse-To: abuse@fastemailflyers.com
|
77
|
+
From: "Original Sender" <original-sender@example.com>
|
78
|
+
To: "Original Recipient" <original-recipient@example.com>
|
79
|
+
Subject: Test
|
80
|
+
|
81
|
+
<html><body>Test</body></html>
|
82
|
+
|
83
|
+
--DA209402F1B99.1505847601/mx.sender.com--
|
@@ -0,0 +1,69 @@
|
|
1
|
+
From MAILER-DAEMON@mta1.example.net Wed Apr 1 01:52:21 2009
|
2
|
+
Return-Path: <MAILER-DAEMON@mta1.example.net>
|
3
|
+
Received: from localhost (localhost)
|
4
|
+
by mta1.example.net (8.13.8/8.13.8) id n315qKUv008579;
|
5
|
+
Wed, 1 Apr 2009 01:52:20 -0400
|
6
|
+
Date: Wed, 1 Apr 2009 01:52:20 -0400
|
7
|
+
From: Mail Delivery Subsystem <MAILER-DAEMON@mta1.example.net>
|
8
|
+
Message-Id: <200904010552.n315qKUv008579@mta1.example.net>
|
9
|
+
To: <sironeko@mta1.example.net>
|
10
|
+
MIME-Version: 1.0
|
11
|
+
Content-Type: multipart/report; report-type=delivery-status;
|
12
|
+
boundary="n315qKUv008579.1238565140/mta1.example.net"
|
13
|
+
Subject: Returned mail: see transcript for details
|
14
|
+
Auto-Submitted: auto-generated (failure)
|
15
|
+
|
16
|
+
This is a MIME-encapsulated message
|
17
|
+
|
18
|
+
--n315qKUv008579.1238565140/mta1.example.net
|
19
|
+
|
20
|
+
The original message was received at Wed, 1 Apr 2009 01:49:21 -0400
|
21
|
+
from localhost.localdomain [127.0.0.1]
|
22
|
+
|
23
|
+
----- The following addresses had permanent fatal errors -----
|
24
|
+
<kijitora@example.com>
|
25
|
+
(reason: 553 http://www.spamhaus.org/query/bl?ip=192.0.2.222)
|
26
|
+
|
27
|
+
----- Transcript of session follows -----
|
28
|
+
... while talking to smtp.secureserver.net.:
|
29
|
+
>>> RCPT To:<kijitora@example.com>
|
30
|
+
<<< 553 http://www.spamhaus.org/query/bl?ip=192.0.2.222
|
31
|
+
550 5.1.1 <kijitora@example.com>... User unknown
|
32
|
+
|
33
|
+
--n315qKUv008579.1238565140/mta1.example.net
|
34
|
+
Content-Type: message/delivery-status
|
35
|
+
|
36
|
+
Reporting-MTA: dns; mta1.example.net
|
37
|
+
Received-From-MTA: DNS; localhost.localdomain
|
38
|
+
Arrival-Date: Wed, 1 Apr 2009 01:49:21 -0400
|
39
|
+
|
40
|
+
Final-Recipient: RFC822; kijitora@example.com
|
41
|
+
Action: failed
|
42
|
+
Status: 5.1.3
|
43
|
+
Remote-MTA: DNS; smtp.secureserver.net
|
44
|
+
Diagnostic-Code: SMTP; 553 http://www.spamhaus.org/query/bl?ip=192.0.2.222
|
45
|
+
Last-Attempt-Date: Wed, 1 Apr 2009 01:52:20 -0400
|
46
|
+
|
47
|
+
--n315qKUv008579.1238565140/mta1.example.net
|
48
|
+
Content-Type: message/rfc822
|
49
|
+
|
50
|
+
Return-Path: <sironeko@mta1.example.net>
|
51
|
+
Received: from mta1.example.net (localhost.localdomain [127.0.0.1])
|
52
|
+
by mta1.example.net (8.13.8/8.13.8) with ESMTP id n315nLUv008575
|
53
|
+
for <kijitora@example.com>; Wed, 1 Apr 2009 01:49:21 -0400
|
54
|
+
Received: (from sironeko@localhost)
|
55
|
+
by mta1.example.net (8.13.8/8.13.8/Submit) id n315nLUx008574;
|
56
|
+
Wed, 1 Apr 2009 01:49:21 -0400
|
57
|
+
Date: Wed, 1 Apr 2009 01:49:21 -0400
|
58
|
+
Message-Id: <200904010549.n315nLUx008574@mta1.example.net>
|
59
|
+
To: kijitora@example.com
|
60
|
+
From: "Sironeko, Cat" <sironeko@example.org>
|
61
|
+
Subject: Nyaan
|
62
|
+
Reply-to: sironeko@example.org
|
63
|
+
MIME-Version: 1.0
|
64
|
+
Content-type: text/plain; charset=us-ascii
|
65
|
+
|
66
|
+
Nyaan
|
67
|
+
|
68
|
+
--n315qKUv008579.1238565140/mta1.example.net--
|
69
|
+
|