This repository has been archived by the owner on Aug 4, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathbounce-regex-list.xml
94 lines (93 loc) · 4.5 KB
/
bounce-regex-list.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
<!-- see http://www.serversmtp.com/en/smtp-error -->
<!--
* regular expressions are ordered by frequency of their corresponding error messages
* for instance hard bounce 'mailbox not found is the most frequent type of bounce
* error message gets matched against the top regular expression first
* this list gets prioritize during the course of indexing for the best possible performance
-->
<bounces>
<regex type="soft" category="try again">
<or>try.*later</or>
<or>connection.*lost</or>
<or>lost.*connection</or>
<or>cannot deliver to this user at this time</or>
<or>(:?temporarily|temporary).*(:?deferred|error|unavailable)</or>
<or>(:?problem|zkuste pozdeji|temporary|temporarily|insufficient system storage)</or>
<or>450 |451 |400 </or>
</regex>
<regex type="soft" category="bad domain: connection timeout">
<or>connection timed out|session timeout exceeded|timed out while|timeout waiting for client input</or>
</regex>
<regex type="soft" category="mailbox is full">
<or>552 </or>
<or>(:?mailbox|schranka|full|over|exceeded).*(:?preplnena|exceeded|mailbox|quota|full|storage)</or>
</regex>
<regex type="soft" category="access forbidden">
<or>(:?denied|ip address|overeni|refused|access forbidden).*(:?|ip |blocked)</or>
<or>refused to talk to me|not our customer</or>
</regex>
<regex type="soft" category="bad domain/command: connection refused">
<or>connection.*refused</or>
<or>syntax error in parameters or arguments</or>
<or>command not allowed</or>
</regex>
<regex type="soft" category="bad domain: host/domain not found">
<or>(:?host|domain).*(:?not found|disabled)</or>
</regex>
<regex type="soft" category="relay denied">
<or>(:?relay|access|relaying|relay access).*(:?denied|not permitted|not allowed)</or>
<or>(:?we do not|unable to|isn't allowed).*(:?relay|relayed)</or>
</regex>
<regex type="soft" category="network unreachable">
<or>network.*unreachable</or>
<or>no route to host</or>
<or>(:?unrouteable|unroutable).*(:?address|host)</or>
</regex>
<regex type="soft" category="Sender Policy Framework">
<or>sender policy framework|spf|intrusion prevention</or>
</regex>
<regex type="soft" category="violation">
<or>(:?too many|too much).*(:?connections|mail|send|recipients)</or>
<or>connection limit exceeded</or>
<or>one recipient domain per session</or>
</regex>
<regex type="soft" category="service unavailable">
<or>service.*(:?unavailable|not available)</or>
<or>internal error|try that server first|local error in processing|insufficient system resources|system failure</or>
</regex>
<regex type="soft" category="policy breach">
<or>(:?rejected|denied|policy).*(:?policy|violation)</or>
</regex>
<regex type="soft" category="greylisting">
<or>(:?greylisting|graylisted|greylisted|graylisting)</or>
</regex>
<regex type="soft" category="dns problem">
<or>(:?dns|name service).*(:?timeout|error)</or>
</regex>
<regex type="soft" category="message content, size or other validations and rules">
<or>(:?content|message|rules).*(:?rejection|rejected|refused|size exceeds)</or>
</regex>
<regex type="soft" category="uncategorized or provider specific">
<or>loops back to myself|bad address syntax</or>
</regex>
<regex type="soft" category="error on other side">
<or>alias expansion.*error</or>
<or>unable to figure out my ip addresses</or>
<or>unable to accept message</or>
</regex>
<regex type="hard" category="mailbox not found, is inactive, disabled or does not exist">
<or>(:?mailbox|address|user|account|recipient|@).*(:?rejected|unknown|disabled|unavailable|invalid|inactive|not exist)</or>
<or>(:?rejected|unknown|unavailable|no|illegal|invalid|no such).*(:?mailbox|address|user|account|recipient|alias)</or>
<or>(:?address|user|recipient) does(n't| not) have .*(:?mailbox|account)</or>
<or>550 |553 |501 </or>
</regex>
<regex type="hard" category="spam detection and blacklisting">
<or>(:?spam|unsolicited|blacklisting|blacklisted|blacklist|554 )</or>
</regex>
<regex type="hard" category="expired, returned to sender">
<or>returned to sender</or>
</regex>
<regex type="hard" category="authentication required">
<or>(:?auth).*(:?required)</or>
</regex>
</bounces>