Knowledge base

Directive · Block <source>

found: 74
default-virtual-mta<source>criticalset by the HubDirectiveApplies when the stream has not been chosen by anything higher up — a header, a rule or a merge variable.process-x-dkim-key<source>criticalDirectiveA permission for the source: with it, the engine takes the private key straight from the X-DKIM-Key header, signs with it and strips the header; without it, the key travels to the recipient.process-x-virtual-mta<source>criticalset by the HubDirectiveA permission for the source — with it the header selects the stream and is stripped before delivery; without it the header does nothing and travels to the recipient.retain-x-dkim-key<source>criticalDirectiveThe only source block directive for which the manual prints its warning in bold: with true, the private key travels to the recipient.smtp-service<source>criticalset by the HubDirectiveTurning it off closes submission for the source without touching the others.allow-starttls<source>set by the HubDirectivePermission to advertise STARTTLS to this source’s clients; the default is not to allow it, and then submission goes in plain text.allow-unencrypted-plain-auth<source>set by the HubDirectiveThe PLAIN mechanism transmits the password almost in plain text; the line decides whether to allow it without encryption. The default is not to allow it.allowed-sender-lists<source>DirectiveNames address lists that MAIL FROM and the sender address from the message are checked against; a message that fails is rejected at submission.check-spf-inbound<source>DirectiveEnables the check on the way in and adds a header with its result to the message.jobid-prefix<source>DirectiveThe value is prepended to the tag that arrived in the header; a reserved value substitutes the login of the submitting user.process-x-job<source>set by the HubDirectiveA permission for the source: with it the header value becomes the message’s job tag, which is then used for selecting in the queue and for stopping a single mailing.reject-invalid-virtual-mta<source>DirectiveThe default is to reject; this same default quietly cancels the fallback stream until it is turned off here.reject-spf-check-fail<source>DirectiveThe most unambiguous of the three outcomes: the domain owner said that mail must not be sent from this address.reject-spf-check-permerror<source>DirectiveThe sender forbade nothing — it made a syntax mistake; the default rejects anyway.reject-spf-check-temperror<source>DirectiveThe only one of the three outcomes where the refusal is temporary: the sender is invited to retry.require-auth<source>set by the HubDirectiveWith true the engine accepts not a single message from the source until the sender logs in — including submission from the machine itself.require-starttls-before-auth<source>DirectiveWith this line the client must perform STARTTLS before the authentication command; the default is not to require it, and then the password can travel in plain text.smtp-max-auth-failure-rate<source>set by the HubDirectiveAfter the specified number of failed attempts the engine stops accepting logins from the source until the end of the period; the default limits nothing.suppression-lists<source>DirectiveAttaches one or more named address lists; a recipient on a list is rejected at submission or bounced later, depending on how invalid recipients are accepted.verp-default<source>DirectiveEnabling on the submission side: it applies to everything submitted through this source.accept-invalid-recipients<source>DirectiveSyntactically invalid addresses are accepted and immediately bounced instead of being rejected right in the submission session; they will not be delivered either way.add-date-header<source>DirectiveAdds a date to a message when the submitting side did not set one; the third value also rewrites an existing one.add-message-id-header<source>set by the HubDirectiveAdds an identifier to a message when the submitting side did not set one; an existing one is not rewritten.add-received-header<source>set by the HubDirectiveThe normal behavior of a mail server is to leave a mark in the transfer chain; it is turned off so that the recipient does not see where the message was submitted from.add-x-virtual-mta-header<source>DirectiveThe node itself signs the message with the name of the stream it went out through; the header reaches the recipient.allow-auth<source>DirectiveA switch for the very possibility of logging in: with no the engine neither advertises nor accepts AUTH, and there is no way to log in.allow-mailmerge<source>DirectiveOpens merge commands to the submitting side, with which one message is sent to many recipients with value substitution.allow-smtputf8<source>DirectiveAdvertises the SMTPUTF8 extension, allowing addresses beyond Latin script; sending is not guaranteed — the receiver may not support it.always-allow-api-submission<source>DirectiveOne line instead of listing the permissions required by submission through the vendor API; currently equivalent to the merge permission.bcc<source>DirectiveEvery message accepted from the source goes as a blind copy to the named address; the manual suggests this for archiving.check-arc-inbound<source>DirectiveThe same observational check as for the regular signature; it has no refusals either.check-dkim-inbound<source>DirectiveObservation only: the engine has no refusals based on the signature check result at all.check-iprev-inbound<source>DirectiveA reverse address check: the PTR record is compared with the name the submitter introduced itself with.check-spf-inbound-max-void-lookups<source>DirectiveThe threshold protects the resolver from being spun up by someone else’s record — and turns complex records into a permanent error.disconnect-on-transient-error<source>DirectiveInstead of a 4xx response the engine drops the connection — for a submitting side that cannot handle temporary refusals.hide-message-source<source>DirectiveRemoves from the added Received header the name and address of whoever submitted the message; the header itself stays.include<source>DirectiveThe same directive written inside a source block — the included lines become its settings.jobid-header<source>DirectiveNames another message header from which the job label is taken; the usual method and the merge variable take precedence.log-commands<source>set by the HubDirectiveWrites the full exchange of commands and responses to the log; the vendor calls this the first step when investigating connectivity.max-message-size<source>set by the HubDirectiveWithout the line the size is not limited at all — the engine’s default is “unlimited.”max-rcpt-per-message<source>DirectiveA ceiling on acceptance: how many addresses the node agrees to take in one message from the submitting system.pattern-list<source>set by the HubDirectiveAttaches a named rule list to the source; the list must be declared earlier in the file, and only one can be attached.process-x-dkim-options<source>DirectiveA permission for the source: with it the header sets the selector, domain, identity and query method for signing one message; without it the header is ignored and stays in the message.process-x-schedule<source>DirectiveA permission for the source: with it the engine delivers a message only within the intervals named in the header; without it the message is delivered in the usual way.reject-iprev-check-fail<source>DirectiveThe default is to let it through, the opposite of the same-named line in the SPF family.reject-iprev-check-permerror<source>DirectiveA permanent reverse check error is almost always someone else’s unfilled zone, not a forgery.reject-iprev-check-temperror<source>DirectiveA temporary name resolution failure; the rejection here is temporary too, and usually your own resolver is to blame.remove-header<source>set by the HubDirectiveLists, separated by commas, the headers removed at delivery; an empty string erases the inherited list.require-starttls<source>DirectiveWith this line the client must perform STARTTLS before anything except the greeting and service commands; the default is not to require it.source-group<source>DirectiveNames the group the source is assigned to; the limits shared by the group are set in the group block, not here.suppress-local-dsn<source>set by the HubDirectiveTurns off bounce, delay and delivery report messages for submission from this source; accounting records are written as usual.too-many-rcpts-fails-message<source>DirectiveInstead of refusing the extra recipients, the engine rejects the message at the DATA command; it works together with the recipient number limit.allow-chunking<source>DirectiveAllows the submitting side to transfer a message with the BDAT command instead of DATA; the default is to allow.allow-empty-x-virtual-mta<source>DirectiveWith this line a message with an empty header is accepted and leaves via the default stream; without it this is an invalid stream and a rejection.auto-qualify-domain<source>set by the HubDirectiveAn address of the form user@host arriving in MAIL FROM or RCPT TO is completed to a full one by adding a suffix; the default is to complete.date-header-time<source>DirectiveChooses between the time the message was received and the time of actual delivery; applies only where the node adds the date itself.dsn-return-default<source>DirectiveThe default for the RET parameter, with which the sender asks to return the whole message or only the headers in the report; the plain-text format cancels this line.log-connections<source>set by the HubDirectiveWrites a log line when a connection from this source opens and closes; off by default.log-data<source>set by the HubDirectiveRecords the exchange byte by byte, in hexadecimal and as text at the same time; the most detailed and heaviest level.log-tls<source>DirectiveDetails of encryption negotiation with the submitting client, in the node log; the default is not to record.max-message-hops<source>DirectiveLoop protection: the node does not accept a message that has passed through too many mail systems.process-x-envid<source>DirectiveA permission for the source: with it the header value becomes the message’s envelope identifier and the header is removed; without it the header is ignored and stays in the message.replace-message-id-header<source>DirectiveRewrites an existing Message-Id with its own; has no effect at all on a message without an identifier.retain-x-dkim-options<source>DirectiveDecides whether the recipient will see the header with signing settings; the default is to remove it.retain-x-job<source>DirectiveDecides whether the recipient will see the job label; works only when reading the header is allowed and the header is present in the message.retain-x-schedule<source>DirectiveDecides whether the recipient will see the sending windows assigned to the message; the default is to remove it.retain-x-virtual-mta<source>DirectiveThe default is to remove it; a header left in place carries internal stream names to the recipient.smtp-command-timeout<source>DirectiveThe wait limit for data from the submitting side during the command exchange; the paired line to the body transfer limit.smtp-data-timeout<source>DirectiveThe wait limit for data from the submitting side after the DATA or BDAT command; applies only to incoming connections.trace-dkim-check<source>DirectiveA trace of signature verification: queries for the public key travel with the message.trace-iprev-check<source>DirectiveThe trace travels with the message; for the reverse check it is short, but its nature is the same.trace-spf-check<source>DirectiveA debugging switch: everything the node asked DNS goes into the message.broken-auth-clients<source>deprecatedDirectiveOne of two directives in the catalog about which the manual says nothing except the word “deprecated”.check-spf-inbound-best-guess<source>deprecatedDirectiveThe manual marks it as deprecated and explicitly advises against using it.