... -i 37.48.67.26 --from foo@mom.za.org
Check Rspamc ${result} DMARC_POLICY_SOFTFAIL
-DKIM PERMFAIL NXDOMAIN
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim2.eml
- ... -i 37.48.67.26
- Check Rspamc ${result} R_DKIM_PERMFAIL
-
-DKIM PERMFAIL BAD RECORD
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 37.48.67.26
- Check Rspamc ${result} R_DKIM_PERMFAIL
-
-DKIM TEMPFAIL SERVFAIL UNALIGNED
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim3.eml
- ... -i 37.48.67.26
- Check Rspamc ${result} R_DKIM_TEMPFAIL
- Should Contain ${result.stdout} DMARC_POLICY_SOFTFAIL
-
-DKIM NA NOSIG
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/utf.eml
- ... -i 37.48.67.26
- Check Rspamc ${result} R_DKIM_NA
-
-SPF PERMFAIL UNRESOLVEABLE INCLUDE
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 37.48.67.26 -F x@fail3.org.org.za
- Check Rspamc ${result} R_SPF_PERMFAIL
-
-SPF DNSFAIL FAILED INCLUDE UNALIGNED
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 8.8.8.8 -F x@fail2.org.org.za
- Check Rspamc ${result} R_SPF_DNSFAIL
- Should Contain ${result.stdout} DMARC_POLICY_SOFTFAIL
-
-SPF ALLOW UNRESOLVEABLE INCLUDE
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 8.8.8.8 -F x@fail3.org.org.za
- Check Rspamc ${result} R_SPF_ALLOW
-
-SPF ALLOW FAILED INCLUDE
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 8.8.4.4 -F x@fail2.org.org.za
- Check Rspamc ${result} R_SPF_ALLOW
-
-SPF NA NA
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 8.8.8.8 -F x@za
- Check Rspamc ${result} R_SPF_NA
-
-SPF NA NOREC
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 8.8.8.8 -F x@co.za
- Check Rspamc ${result} R_SPF_NA
-
-SPF NA NXDOMAIN
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 8.8.8.8 -F x@zzzzaaaa
- Check Rspamc ${result} R_SPF_NA
-
-SPF PERMFAIL UNRESOLVEABLE REDIRECT
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 8.8.8.8 -F x@fail4.org.org.za
- Check Rspamc ${result} R_SPF_PERMFAIL
-
-SPF REDIRECT NO USEABLE ELEMENTS
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 8.8.8.8 -F x@fail10.org.org.za
- Check Rspamc ${result} R_SPF_PERMFAIL
-
-SPF DNSFAIL FAILED REDIRECT
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 8.8.8.8 -F x@fail1.org.org.za
- Check Rspamc ${result} R_SPF_DNSFAIL
-
-SPF PERMFAIL NO USEABLE ELEMENTS
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 8.8.8.8 -F x@fail5.org.org.za
- Check Rspamc ${result} R_SPF_PERMFAIL
-
-SPF FAIL
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 8.8.8.8 -F x@example.net
- Check Rspamc ${result} R_SPF_FAIL
-
-SPF PERMFAIL UNRESOLVEABLE MX
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 1.2.3.4 -F x@fail6.org.org.za
- Check Rspamc ${result} R_SPF_PERMFAIL
-
-SPF PERMFAIL UNRESOLVEABLE A
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 1.2.3.4 -F x@fail7.org.org.za
- Check Rspamc ${result} R_SPF_PERMFAIL
-
-SPF DNSFAIL FAILED A
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 1.2.3.4 -F x@fail8.org.org.za
- Check Rspamc ${result} R_SPF_DNSFAIL
-
-SPF DNSFAIL FAILED MX
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 1.2.3.4 -F x@fail9.org.org.za
- Check Rspamc ${result} R_SPF_DNSFAIL
-
-SPF DNSFAIL FAILED RECORD
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 1.2.3.4 -F x@www.dnssec-failed.org
- Check Rspamc ${result} R_SPF_DNSFAIL
-
-SPF PASS INCLUDE
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
- ... -i 8.8.8.8 -F x@pass1.org.org.za
- Check Rspamc ${result} R_SPF_ALLOW
-
-SPF PTRS
- ${result} = Scan Message With Rspamc /dev/null
- ... -i 88.99.142.95 -F foo@crazyspf.cacophony.za.org
- Check Rspamc ${result} R_SPF_ALLOW
- ${result} = Scan Message With Rspamc /dev/null
- ... -i 128.66.0.1 -F foo@crazyspf.cacophony.za.org
- Check Rspamc ${result} R_SPF_PERMFAIL
- ${result} = Scan Message With Rspamc /dev/null
- ... -i 209.85.216.182 -F foo@crazyspf.cacophony.za.org
- Check Rspamc ${result} R_SPF_FAIL
- #${result} = Scan Message With Rspamc /dev/null
- #... -i 98.138.91.166 -F foo@crazyspf.cacophony.za.org
- #Check Rspamc ${result} R_SPF_ALLOW
- #${result} = Scan Message With Rspamc /dev/null
- #... -i 98.138.91.167 -F foo@crazyspf.cacophony.za.org
- #Check Rspamc ${result} R_SPF_ALLOW
- #${result} = Scan Message With Rspamc /dev/null
- #... -i 98.138.91.168 -F foo@crazyspf.cacophony.za.org
- #Check Rspamc ${result} R_SPF_ALLOW
-
*** Keywords ***
DMARC Setup
${PLUGIN_CONFIG} = Get File ${TESTDIR}/configs/dmarc.conf
--- /dev/null
+*** Settings ***
+Suite Setup DKIM Setup
+Suite Teardown Simple Teardown
+Library ${TESTDIR}/lib/rspamd.py
+Resource ${TESTDIR}/lib/rspamd.robot
+Variables ${TESTDIR}/lib/vars.py
+
+*** Variables ***
+${CONFIG} ${TESTDIR}/configs/plugins.conf
+${RSPAMD_SCOPE} Suite
+${URL_TLD} ${TESTDIR}/../../contrib/publicsuffix/effective_tld_names.dat
+
+*** Test Cases ***
+DKIM PERMFAIL NXDOMAIN
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim2.eml
+ ... -i 37.48.67.26
+ Check Rspamc ${result} R_DKIM_PERMFAIL
+
+DKIM PERMFAIL BAD RECORD
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 37.48.67.26
+ Check Rspamc ${result} R_DKIM_PERMFAIL
+
+DKIM TEMPFAIL SERVFAIL UNALIGNED
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim3.eml
+ ... -i 37.48.67.26
+ Check Rspamc ${result} R_DKIM_TEMPFAIL
+
+DKIM NA NOSIG
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/utf.eml
+ ... -i 37.48.67.26
+ Check Rspamc ${result} R_DKIM_NA
+
+DKIM Sign
+ Set Suite Variable ${RAN_SIGNTEST} 0
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/spam_message.eml --mime --header=dodkim=1
+ Check Rspamc ${result} DKIM-Signature
+ Set Suite Variable ${SIGNED_MESSAGE} ${TMPDIR}/dkim_sign_test.eml
+ Create File ${SIGNED_MESSAGE} ${result.stdout}
+ Set Suite Variable ${RAN_SIGNTEST} 1
+
+DKIM Self Verify
+ Run Keyword If ${RAN_SIGNTEST} == 0 Fail "Sign test was not run"
+ ${result} = Scan Message With Rspamc ${SIGNED_MESSAGE}
+ Check Rspamc ${result} R_DKIM_ALLOW
+
+DKIM Verify ED25519 PASS
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/ed25519.eml
+ Check Rspamc ${result} R_DKIM_ALLOW
+
+DKIM Verify ED25519 REJECT
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/ed25519-broken.eml
+ Check Rspamc ${result} R_DKIM_REJECT
+
+*** Keywords ***
+DKIM Setup
+ ${PLUGIN_CONFIG} = Get File ${TESTDIR}/configs/dkim.conf
+ Set Suite Variable ${PLUGIN_CONFIG}
+ Generic Setup PLUGIN_CONFIG
--- /dev/null
+*** Settings ***
+Suite Setup SPF Setup
+Suite Teardown Simple Teardown
+Library ${TESTDIR}/lib/rspamd.py
+Resource ${TESTDIR}/lib/rspamd.robot
+Variables ${TESTDIR}/lib/vars.py
+
+*** Variables ***
+${CONFIG} ${TESTDIR}/configs/plugins.conf
+${RSPAMD_SCOPE} Suite
+${URL_TLD} ${TESTDIR}/../../contrib/publicsuffix/effective_tld_names.dat
+
+*** Test Cases ***
+SPF PERMFAIL UNRESOLVEABLE INCLUDE
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 37.48.67.26 -F x@fail3.org.org.za
+ Check Rspamc ${result} R_SPF_PERMFAIL
+
+SPF DNSFAIL FAILED INCLUDE UNALIGNED
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 8.8.8.8 -F x@fail2.org.org.za
+ Check Rspamc ${result} R_SPF_DNSFAIL
+ Should Contain ${result.stdout} DMARC_POLICY_SOFTFAIL
+
+SPF ALLOW UNRESOLVEABLE INCLUDE
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 8.8.8.8 -F x@fail3.org.org.za
+ Check Rspamc ${result} R_SPF_ALLOW
+
+SPF ALLOW FAILED INCLUDE
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 8.8.4.4 -F x@fail2.org.org.za
+ Check Rspamc ${result} R_SPF_ALLOW
+
+SPF NA NA
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 8.8.8.8 -F x@za
+ Check Rspamc ${result} R_SPF_NA
+
+SPF NA NOREC
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 8.8.8.8 -F x@co.za
+ Check Rspamc ${result} R_SPF_NA
+
+SPF NA NXDOMAIN
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 8.8.8.8 -F x@zzzzaaaa
+ Check Rspamc ${result} R_SPF_NA
+
+SPF PERMFAIL UNRESOLVEABLE REDIRECT
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 8.8.8.8 -F x@fail4.org.org.za
+ Check Rspamc ${result} R_SPF_PERMFAIL
+
+SPF REDIRECT NO USEABLE ELEMENTS
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 8.8.8.8 -F x@fail10.org.org.za
+ Check Rspamc ${result} R_SPF_PERMFAIL
+
+SPF DNSFAIL FAILED REDIRECT
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 8.8.8.8 -F x@fail1.org.org.za
+ Check Rspamc ${result} R_SPF_DNSFAIL
+
+SPF PERMFAIL NO USEABLE ELEMENTS
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 8.8.8.8 -F x@fail5.org.org.za
+ Check Rspamc ${result} R_SPF_PERMFAIL
+
+SPF FAIL
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 8.8.8.8 -F x@example.net
+ Check Rspamc ${result} R_SPF_FAIL
+
+SPF PERMFAIL UNRESOLVEABLE MX
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 1.2.3.4 -F x@fail6.org.org.za
+ Check Rspamc ${result} R_SPF_PERMFAIL
+
+SPF PERMFAIL UNRESOLVEABLE A
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 1.2.3.4 -F x@fail7.org.org.za
+ Check Rspamc ${result} R_SPF_PERMFAIL
+
+SPF DNSFAIL FAILED A
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 1.2.3.4 -F x@fail8.org.org.za
+ Check Rspamc ${result} R_SPF_DNSFAIL
+
+SPF DNSFAIL FAILED MX
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 1.2.3.4 -F x@fail9.org.org.za
+ Check Rspamc ${result} R_SPF_DNSFAIL
+
+SPF DNSFAIL FAILED RECORD
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 1.2.3.4 -F x@www.dnssec-failed.org
+ Check Rspamc ${result} R_SPF_DNSFAIL
+
+SPF PASS INCLUDE
+ ${result} = Scan Message With Rspamc ${TESTDIR}/messages/dmarc/bad_dkim1.eml
+ ... -i 8.8.8.8 -F x@pass1.org.org.za
+ Check Rspamc ${result} R_SPF_ALLOW
+
+SPF PTRS
+ ${result} = Scan Message With Rspamc /dev/null
+ ... -i 88.99.142.95 -F foo@crazyspf.cacophony.za.org
+ Check Rspamc ${result} R_SPF_ALLOW
+ ${result} = Scan Message With Rspamc /dev/null
+ ... -i 128.66.0.1 -F foo@crazyspf.cacophony.za.org
+ Check Rspamc ${result} R_SPF_PERMFAIL
+ ${result} = Scan Message With Rspamc /dev/null
+ ... -i 209.85.216.182 -F foo@crazyspf.cacophony.za.org
+ Check Rspamc ${result} R_SPF_FAIL
+ #${result} = Scan Message With Rspamc /dev/null
+ #... -i 98.138.91.166 -F foo@crazyspf.cacophony.za.org
+ #Check Rspamc ${result} R_SPF_ALLOW
+ #${result} = Scan Message With Rspamc /dev/null
+ #... -i 98.138.91.167 -F foo@crazyspf.cacophony.za.org
+ #Check Rspamc ${result} R_SPF_ALLOW
+ #${result} = Scan Message With Rspamc /dev/null
+ #... -i 98.138.91.168 -F foo@crazyspf.cacophony.za.org
+ #Check Rspamc ${result} R_SPF_ALLOW
+
+*** Keywords ***
+SPF Setup
+ ${PLUGIN_CONFIG} = Get File ${TESTDIR}/configs/dmarc.conf
+ Set Suite Variable ${PLUGIN_CONFIG}
+ Generic Setup PLUGIN_CONFIG
+++ /dev/null
-*** Settings ***
-Suite Setup Generic Setup
-Suite Teardown Simple Teardown
-Library ${TESTDIR}/lib/rspamd.py
-Resource ${TESTDIR}/lib/rspamd.robot
-Variables ${TESTDIR}/lib/vars.py
-
-*** Variables ***
-${CONFIG} ${TESTDIR}/configs/dkim.conf
-${RSPAMD_SCOPE} Suite
-
-*** Test Cases ***
-DKIM Sign
- Set Suite Variable ${RAN_SIGNTEST} 0
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/spam_message.eml --mime --header=dodkim=1
- Check Rspamc ${result} DKIM-Signature
- Set Suite Variable ${SIGNED_MESSAGE} ${TMPDIR}/dkim_sign_test.eml
- Create File ${SIGNED_MESSAGE} ${result.stdout}
- Set Suite Variable ${RAN_SIGNTEST} 1
-
-DKIM Self Verify
- Run Keyword If ${RAN_SIGNTEST} == 0 Fail "Sign test was not run"
- ${result} = Scan Message With Rspamc ${SIGNED_MESSAGE}
- Check Rspamc ${result} R_DKIM_ALLOW
-
-DKIM Verify ED25519 PASS
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/ed25519.eml
- Check Rspamc ${result} R_DKIM_ALLOW
-
-DKIM Verify ED25519 REJECT
- ${result} = Scan Message With Rspamc ${TESTDIR}/messages/ed25519-broken.eml
- Check Rspamc ${result} R_DKIM_REJECT
\ No newline at end of file
type = txt;
replies = ["k=ed25519; p=yi50DjK5O9pqbFpNHklsv9lqaS0ArSYu02qp1S0DW1Y="];
},
+ {
+ name = "brisbane._domainkey.football.example.com";
+ type = txt;
+ replies = ["v=DKIM1; k=ed25519; p=11qYAYKxCrfVS/7TyWQHOg7hcvPapiMlrwIaaPcHURo="];
+ },
+ {
+ name = "test._domainkey.football.example.com";
+ type = txt;
+ replies = ["v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkHlOQoBTzWRiGs5V6NpP3idY6Wk08a5qhdR6wy5bdOKb2jLQiY/J16JYi0Qvx/byYzCNb3W91y3FutACDfzwQ/BC/e/8uBsCR+yz1Lxj+PL6lHvqMKrM3rG4hstT5QjvHO9PzoxZyVYLzBfO2EeC3Ip3G+2kryOTIKT+l/K4w3QIDAQAB"],
+ },
{
name = "dkim._domainkey.cacophony.za.org",
type = "txt";