Knowledge base

check-spf-inbound-best-guess

<source>deprecated

Deprecated line: do not use
in the configuration this is a linecheck-spf-inbound-best-guessinside the block <source>
A line the manual gives one word to

The manual gives this line one line: deprecated, do not use. No syntax, no default, no description of behavior.

The name shows that it concerned a “best guess” SPF check — an attempt to reach a verdict for a domain that has no record at all. This technique was in use until the standard settled; today the absence of a record means the absence of a verdict, and guessing on the sender’s behalf is not done.

What to do. Nothing: the line should not be in the configuration. The ordinary check is enabled with check-spf-inbound.

The main trap is carrying it over from an old configuration. The line looks related to the others and moves along with them. Its behavior is described nowhere, which means it is unpredictable when the node is upgraded.
What the Hub does. It does not write it and will not: the line is marked deprecated by the vendor itself.
Recommended values

Do not set it. That is all the manual allows us to say.

If the line is there — remove it. Its behavior is not described and may change without warning in an upgrade.

Need a check — enable the ordinary one. check-spf-inbound is fully documented.

The guess about the origin of the name is ours; the manual says nothing about it. The only fact from the manual here: the line is deprecated and should not be used.
Example configuration
# a correct configuration does not contain this line
<source 0/0>
    check-spf-inbound true</source>
The example shows the replacement: the ordinary inbound check is fully documented and does what is expected of the deprecated line.
yellow — — directive names, blue — blocks. They are highlighted the same way in the text of the card.
▲

Common mistakes and problems

what people get wrong and how it ends1 mistake▶

Carried over from an old configuration

§ 3.3.7.23

What it costsThe line is marked deprecated and its behavior is not described. When the node is upgraded it may change without warning, and there will be nothing to notice it by.
How to spot itThe line is present in the configuration.
How to do it rightRemove it; the check is enabled with the ordinary line.
Compatibility
PowerMTA 6.0
described in the manual of this version · platform: any
The vendor does not state the first version for every directive — there is no note here. The name also appears in the 5.0 edition of the manual.
Reference data
Syntax
check-spf-inbound-best-guess <boolean>
Values
do not set: the manual marks the line deprecated and gives neither syntax nor default for it
Applying
reload, no restart needed
Queue
will not touch what is already queued
Where to write it
<source>
How many times
once in the block
Everything here comes from the manual, with the section.
Inheritance
The value is set in the <source> block, but the manual gives no merge rules for the deprecated line. It is picked up by pmta reload — like other source lines.
How to check on the node
The only meaningful check is to make sure the line is not in the configuration:
grep -n check-spf-inbound-best-guess /etc/pmta/config
Empty output is the correct result. The Hub does not write this line.
In the Hub
Cost of a mistake
safe: a wrong value breaks nothing
Scenarios
Configuration lifecycle