On Fri 20/Oct/2023 15:50:29 +0200 OLIVIER HUREAU wrote:
Hi,

Assuming that the comma is an Oxford comma, I do interpret the sentence with the following boolean:

( 'retrieved policy record does not contain a valid "p" tag'  || contains an "sp" or "np" tag that is not valid ) && ( a "rua" tag is present and contains at least one syntactically valid reporting URI )


I think it means:
    if ( retrieved policy record does not contain a valid "p" tag' ||
         (the applicable policy would be that of an "sp" or "np" tag &&
          such tag exists but is not valid)
       ) then:

       if a rua exists use it
       otherwise forget that record.

The tricky point is that, although sp= or np= default to p= if they are missing, if they are present but not valid a valid p doesn't help.


 'v=DMARC1; p=reject; sp=quarantin; rua=mailto:[email protected]'  (an 'e' is 
missing at 'quarantine') MUST
 be interpreted as 'v=DMARC1; p=none;' because the "sp" tag is not valid.


That's the case if From: referred to a subdomain. In that case sp= would be applicable, but it is not valid, so treat is as if it had sp=none. p= doesn't play. Would have played if sp= was missing.


Best
Ale
--





_______________________________________________
dmarc mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/dmarc

Reply via email to