> On Oct 20, 2023, at 8:43 AM, Alessandro Vesely <ves...@tana.it> wrote: > > 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:r...@example.com' (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. > That’s my interpretation, too, but Olivier has a point that the wording isn’t as clear as it could be.
N _______________________________________________ dmarc mailing list dmarc@ietf.org https://www.ietf.org/mailman/listinfo/dmarc