Re: [dmarc-ietf] ABNF errors on RFC7489 and dmarcbis-07

John Levine <johnl@taugh.com> Sat, 23 April 2022 17:50 UTC

Return-Path: <johnl@iecc.com>
X-Original-To: dmarc@ietfa.amsl.com
Delivered-To: dmarc@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BCBEE3A1558 for <dmarc@ietfa.amsl.com>; Sat, 23 Apr 2022 10:50:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.862
X-Spam-Level:
X-Spam-Status: No, score=-1.862 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.248, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=iecc.com header.b=zR6n4FBE; dkim=pass (2048-bit key) header.d=taugh.com header.b=YOle70MV
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 385H-4R5k9zo for <dmarc@ietfa.amsl.com>; Sat, 23 Apr 2022 10:50:19 -0700 (PDT)
Received: from gal.iecc.com (gal.iecc.com [IPv6:2001:470:1f07:1126:0:43:6f73:7461]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9B2ED3A1553 for <dmarc@ietf.org>; Sat, 23 Apr 2022 10:50:19 -0700 (PDT)
Received: (qmail 30512 invoked from network); 23 Apr 2022 17:50:16 -0000
DKIM-Signature: v=1; a=rsa-sha256; c=simple; d=iecc.com; h=date:message-id:from:to:cc:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:cleverness; s=772e.62643c58.k2204; bh=xxK/5FH4pcRbuw7VEemP6YmOVSqVKQbM4pLipCKSt5E=; b=zR6n4FBEd4kelZCB+OCu1U7cAMGGYfdmHYcOiGZhBYmQRtz0yL8ZfBxm0oLpbhhgElAIOMYQge4kKwly1LEUZBcNygHH5/5nzU8GK8MzmgdXQ0eLyqKyr6aYWyVC6C2bYKsSG24ATHBd+bso+rDU8IJwk/gFtKSX+FGUrtxdsb4Wo5/v3nHK4ID3APpXDjP5CkiNwx30uz+CJY4f4EutEZ8wd+RMMQozipiIoaN/KmFOUf88qjD+jZW61cQarIJywaCo/isYV0gQeyS9E+1sScfTZyMyI5/XQgntrc4nfKtYAE8B10/b91EqIACMlrSH1uhhAnodNxsr8BligJvdPQ==
DKIM-Signature: v=1; a=rsa-sha256; c=simple; d=taugh.com; h=date:message-id:from:to:cc:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:cleverness; s=772e.62643c58.k2204; bh=xxK/5FH4pcRbuw7VEemP6YmOVSqVKQbM4pLipCKSt5E=; b=YOle70MVoYEiPxWoT41qS5sEj2PRua+t3uPu+1hbrd3FhDE0HZl7v4lfo4prnRYXx+FQDCR38yvcmK+iwqWJ6Uci7FoH9y2d7aeUDsc+E13Fw6ZRR4w71qjVBWSqq4y2FT4rFiDsQ/TePV7MBmWPV8cj7mpHxrpGAxpZWUjnEg/GhnS4iCRnP94OUXQDijL9KVAg2dPm+r6DiqUvaHWxFJCQo24J4x9I9/yOCwOgU6ky9fXnJVLZA5Ex/AqctO65fB+K4IADan8IDUjhplsr5yuUWWzXxvzwfSrESg6mFSHst2vQCO9itbdmG+1faJe31HtcrCulM1qZ91E8kit8dw==
Received: from ary.qy ([IPv6:2001:470:1f07:1126::78:696d:6170]) by imap.iecc.com ([IPv6:2001:470:1f07:1126::78:696d:6170]) with ESMTPS (TLS1.3 ECDHE-RSA AES-256-GCM AEAD) via TCP6; 23 Apr 2022 17:50:15 -0000
Received: by ary.qy (Postfix, from userid 501) id 73B243E6572C; Sat, 23 Apr 2022 13:50:14 -0400 (EDT)
Date: Sat, 23 Apr 2022 13:50:14 -0400
Message-Id: <20220423175015.73B243E6572C@ary.qy>
From: John Levine <johnl@taugh.com>
To: dmarc@ietf.org
Cc: rfc@arcsin.de
In-Reply-To: <dc0210cb-5241-bce7-609d-352faf2b5132@arcsin.de>
Organization: Taughannock Networks
X-Headerized: yes
Cleverness: minimal
Mime-Version: 1.0
Content-type: text/plain; charset="utf-8"
Content-transfer-encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/dmarc/euiUMEH-68TIUTI_vXy09g_sfIw>
Subject: Re: [dmarc-ietf] ABNF errors on RFC7489 and dmarcbis-07
X-BeenThere: dmarc@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Domain-based Message Authentication, Reporting, and Compliance \(DMARC\)" <dmarc.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dmarc>, <mailto:dmarc-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dmarc/>
List-Post: <mailto:dmarc@ietf.org>
List-Help: <mailto:dmarc-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dmarc>, <mailto:dmarc-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 23 Apr 2022 17:50:25 -0000

It appears that Damian Lukowski  <rfc@arcsin.de> said:
> From the perspective of a decision problem, there are no unknown DMARC tags. If there are syntax errors, then the whole thing is 
>not a DMARC record, in particular it does not consist of valid tag-value pairs and invalid tag-value pairs. The record
>
>> v=DMARC1; rua=mailto:report@example.com; garbage=101; more-garbage
>
>should not yield DMARC reports at all, as there is no DMARC record.

The spec could be worded better, but you are clearly mistaken.
Anything that starts with "v=DMARC1;" is a DMARC record.

>In my opinion, the spec should either stick to the grammar, or explicitly and unambiguously define the parsing procedure.
>
>[1] "A DMARC policy record MUST comply with the formal specification found in Section 5.4"

Selective quoting is not helpful.  What it actually says is:

  A DMARC policy record MUST comply with the formal specification
  found in Section 5.4 in that the "v" tag MUST be present and MUST
  appear first. Unknown tags MUST be ignored. Syntax errors in the
  remainder of the record SHOULD be discarded in favor of default values
  (if any) or ignored outright.

As I said before, I think we should fix the spec to agree with the
practice. The ones I've seen accept an arbitrary list of tag=value
pairs, ignore any trailing garbage, and do not care about tag order
other than that v=DMARC1 has to be first.

I definitely would not say that clients have to ignore records wth
syntax errors, since implmentations will ignore that and do what they
do how.

Re Ale's question about a the tag registry. I'd make it FCFS rather
than Specification Required since there is no risk of running out of
tag names. I'd rather know about all the tags people use, even poorly
specified ones, so we can avoid name collisions.

R's,
John