If somebody stumbles on this like me: The reason is the run command got
changed so that no quoting is necessary anymore
(https://utcc.utoronto.ca/~cks/space/blog/sysadmin/EximRunQuotingChange)
starting with exim 4.96.

So the solution is to remove the `${quote:...}`:

```
    condition = ${run{/usr/bin/spfquery.mail-spf-perl \
                   --ip $sender_host_address \
                   --scope mfrom \
                   --identity $sender_address} \
                   {no}{${if eq {$runrc}{1}{yes}{no}}}}
```

With quoting, it actually passed `"[email protected]"` as `identity` (with
explicit quotes), as if you'd do `--identity '"[email protected]@"'`, which
makes the check fail.

I debugged this by using `$value` in a `log_message`, so that I saw the
output of the run command and the additional quotes:

```
warn
  log_message = SPF Result: $value
```

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2056372

Title:
  Enabling SPF checks with CHECK_RCPT_SPF doesn't work

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/exim4/+bug/2056372/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to