X-Git-Url: https://vcs.fsf.org/?p=exim.git;a=blobdiff_plain;f=test%2Fscripts%2F4600-SPF%2F4601;h=96f06a6d12fa2a7807399f148d70bc0178a15632;hp=ab434611c962e52de987495434baf1dea9c440ec;hb=refs%2Ftags%2Fexim-4.93.0.4;hpb=db78a5c40bc27d6f9fe9151442e9dbb9abb11d8a diff --git a/test/scripts/4600-SPF/4601 b/test/scripts/4600-SPF/4601 index ab434611c..96f06a6d1 100644 --- a/test/scripts/4600-SPF/4601 +++ b/test/scripts/4600-SPF/4601 @@ -1,12 +1,5 @@ # lookup string-expansion # -# It is rather difficult to properly test spf. We use libspf2 to do the work, and it -# does the DNS lookups, so we cannot intercept them in the testsuite's usual fashion -# to provide values for testcases. -# -# For now just check that what should be working syntax does not cause us to fall over. -# Be careful with envelope-domains used for testcases, as real DNS lookups will be done. -# exim -bd -DSERVER=server -oX PORT_D:PORT_S **** client 127.0.0.1 PORT_D @@ -31,3 +24,15 @@ quit **** # killdaemon +# +# SERVFAIL -> temperror +# A multiple spf-RR return should get permerror +# - and not crash with non-spf txt records +# v=spf1 is casr-insensitive +exim -be +none ${lookup {fred@v6.test.ex} spf {HOSTIPV4}} +temperror ${lookup {fred@test.again.dns} spf {HOSTIPV4}} +permerror ${lookup {fred@double.example.com} spf {8.8.8.8}} +permerror ${lookup {fred@doubleplus.example.com} spf {8.8.8.8}} +pass ${lookup {fred@uppercase.example.com} spf {HOSTIPV4}} +****