<domain>set by the Hub
The value is the name of a list declared by a <smtp-pattern-list> block. The list is attached to connections with this recipient domain, and its SMTP responses are parsed with it.
Why: receiver responses are not standardized. The same meaning — “you are sending too fast,” “the address does not exist,” “your address is on a blocklist” — is written by each in its own way. The pattern list translates these texts into engine actions, including putting the queue into backoff mode.
Hence the direct connection with backoff-mode: without patterns the engine learns about a problem only from response codes, and the codes are the same for most receivers.
What needs checking is not the attachment line but the response texts themselves in the log — compare them with the patterns.
The second half: the list is attached by name, and the name is not checked anywhere. A typo means this recipient domain has no patterns at all — and nothing reports it.
The list is shared with Protosender: the same patterns, the same layout. This is part of the agreement on a single configuration format — a node configured by the Hub is readable by both products.
What to set. The value is a list name; the choice is how many lists to keep:
| Value | When |
|---|---|
| one common list | receivers’ patterns are similar — our case |
| a list of its own per receiver | a large receiver has special responses, and the common rules get in its way |
| do not write it | responses are parsed only by codes, without texts |
The third is the vendor default, and it is weaker: receivers use the same codes, while the meaning is in the text.
# the list is declared separately, and the recipient domain refers to it <smtp-pattern-list blocking-errors> </smtp-pattern-list> <domain $mailru> smtp-pattern-list blocking-errors</domain>
what people get wrong and how it ends2 mistakes▶
our experience
§ 3.3.10.101
2 relations
grep -n 'smtp-pattern-list' /etc/pmta/config grep -i 'dsnDiag\|smtp;4\|smtp;5' /var/log/pmta/acct-*.csv 2>/dev/null | tail -20
3 articles
◇Four value types the whole config is written inBoolean, domain pattern, regular expression and time interval — defined once in § 3.2 and then used by all directives.◇How the policy for a receiver is assembledSettings are assembled from the most general pattern to the most precise; the order of blocks in the file means nothing.◇Backoff mode — the queue's second personalityA queue that a receiver has started refusing switches to a parallel set of limits, retries and routes — ten directives that act only in this mode.