<virtual-mta>
The line names a declared rule list. Messages leaving through this sending address go through it.
The manual’s main way of attaching it is different. § 3.3.18 says directly: to use a list, you name it in the <source> block — and its own example shows exactly that. Attaching it here ties rewriting to the sending address, not to submission.
The difference is practical. The source is selected when the message is accepted, the sending address afterwards; so attaching it here rewrites the address later and depends on which stream the message takes. For the same return address across the whole node this is an unnecessary dependency.
🔎 The catalog has no rewrite-list entry for <source> — the manual’s directive index lists it only for <virtual-mta> and <virtual-mta-pool>, even though section § 3.3.18 attaches the list precisely to a source. The catalog follows the index item for item, so this is the fourth known gap in the vendor index.
The value is the name of a declared list. The choice here is where to attach it:
| Where | When it applies | Who it suits |
|---|---|---|
| <source> | when the message is accepted, before the stream is selected | the same return address for all submission — the usual case |
| here | after the sending address is selected | when the return address depends specifically on the stream |
| <virtual-mta-pool> | the same for the whole group | the same rules for a wave of addresses |
In a fleet it is almost always the first option. The return address is tied to the sending domain, not to the node address — and that has to be decided at acceptance.
# rewriting tied to a stream, not to submission <rewrite-list abc> mail-from foo@* *@bar.com </rewrite-list> <virtual-mta mta1> rewrite-list abc</virtual-mta>
what people get wrong and how it ends2 mistakes▶
§ 3.3.18
§ 3.3.13
2 relations
rewrite-list<virtual-mta-pool>The manual gives the definition for a sending address; here is only what writing it at the pool level changes. § 3.3.12.13mail-from<rewrite-list>The rule works only if the list is attached; the manual attaches it to a source, and a reference from a sending address is the second way. § 3.3.12.13
pmtaacctfind --output csv[orig,vmta,rcpt] /var/log/pmta/acct-*.csv | head -20
3 articles
◇Headers the sender uses to control deliverySix control headers let the submitting side choose a stream, tag a message with a job, set signing options and the key, the envelope identifier and the schedule; each is allowed separately and per source.◇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.◇Warm-up built into the engineA warmed-up address hands the first N messages of the day for each receiver to its cold partner; the partner sends them itself and builds history.