Re: [xmpp] [Technical Errata Reported] RFC7622 (5769)

Barry Leiba <barryleiba@computer.org> Mon, 01 July 2019 13:18 UTC

Return-Path: <barryleiba@gmail.com>
X-Original-To: xmpp@ietfa.amsl.com
Delivered-To: xmpp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E4CDF1200A1 for <xmpp@ietfa.amsl.com>; Mon, 1 Jul 2019 06:18:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.4
X-Spam-Level:
X-Spam-Status: No, score=-1.4 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.25, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=no autolearn_force=no
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 6ptZihvagPZg for <xmpp@ietfa.amsl.com>; Mon, 1 Jul 2019 06:18:29 -0700 (PDT)
Received: from mail-io1-f54.google.com (mail-io1-f54.google.com [209.85.166.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 736B912023F for <xmpp@ietf.org>; Mon, 1 Jul 2019 06:18:29 -0700 (PDT)
Received: by mail-io1-f54.google.com with SMTP id k20so2370772ios.10 for <xmpp@ietf.org>; Mon, 01 Jul 2019 06:18:29 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=40dHUy2JzYmngUICh/iWuP/7RjOeXzvylzfvwgX6rfs=; b=cuDByK3LPklgo6usZ6qSYiq6QD77nZu/x+bxWILPg1kvQd+T/QnalfsVy2Diyo+kkn csJqVQOohmdGboz+hfZVd3gyOEAmHg6fwCrotSw9H+yCI0aTTe5+6TymaB5FMgDxwuFY MBeoE3JOn6G9xGmzJrUwh9x9dERbhfyWLD20wJBMtK2tr3ssxTz9ebJRbAuey6RVQstY kRAyXuH4oYnPBy6+/1fAD0tkZsoT8ozCmolJiSRKa+ksdHZViKjRfywY5bFXXCjVF7u3 WdbegRSFRf5rShObKVQ1U5XLOKxmuFNeu5EO1PNiI3o88YAJxJ7upGQpHlrLAYtJl0bC 7NPw==
X-Gm-Message-State: APjAAAW0IQf5d9tS8IY00Hj1Igib1S/s4/zS4ic/ZxHbpyhV4nEda5kh 6WDQ0IvSSkdhKnV0KHv7DwXAOyGWo8U1hrw7L0/oFThB
X-Google-Smtp-Source: APXvYqzeLhswPFD5ejfDS8ctWj9sg7TSTBUGPCvauxmn6TUA9UdS1HvxS3CoFNFAk8sVDMoKsvAWfJ/LNAF2L3Sw4vs=
X-Received: by 2002:a02:b710:: with SMTP id g16mr28491823jam.88.1561987107721; Mon, 01 Jul 2019 06:18:27 -0700 (PDT)
MIME-Version: 1.0
References: <20190630214921.40238B81D6A@rfc-editor.org> <CALaySJJ0t58BgMYE6G9XLFc-ydskvV6CS48d9++8xBfNZ_cLDg@mail.gmail.com> <9c33c9d6-3bfb-78bb-f684-0a8fc078ac4a@geekplace.eu>
In-Reply-To: <9c33c9d6-3bfb-78bb-f684-0a8fc078ac4a@geekplace.eu>
From: Barry Leiba <barryleiba@computer.org>
Date: Mon, 01 Jul 2019 09:18:16 -0400
Message-ID: <CALaySJKztZ40OLNL6Jsvt1wzFgjYzqxUNq3Xj60KwOkAvJGxZA@mail.gmail.com>
To: Florian Schmaus <flo@geekplace.eu>
Cc: RFC Errata System <rfc-editor@rfc-editor.org>, Peter Saint-Andre <stpeter@stpeter.im>, Joe Hildebrand <hildjj@cursive.net>, Alexey Melnikov <aamelnikov@fastmail.fm>, Adam Roach <adam@nostrum.com>, xmpp@ietf.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/xmpp/E-2gRvr5FUKt0svsAbD0DXaGEKg>
Subject: Re: [xmpp] [Technical Errata Reported] RFC7622 (5769)
X-BeenThere: xmpp@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: XMPP Working Group <xmpp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/xmpp>, <mailto:xmpp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/xmpp/>
List-Post: <mailto:xmpp@ietf.org>
List-Help: <mailto:xmpp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/xmpp>, <mailto:xmpp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 01 Jul 2019 13:18:31 -0000

> > 1. Is this bit of text intended to say that "domainpart" has to
> > *consist of* NR-LDH labels and U-labels, rather than to contain
> > characters valid for those?
>
> XMPP domainparts may contain
> - IPv4/v6 addresses
> - DNS names
> - "Hostnames" (more or less arbitrary XMPP service identifiers)
>   Those are potentially longer strings then DNS labels are allowed to
>   be.

OK, so there's more to it than that.

> > Characters valid for those are also valid
> > for R-LDH labels and A-labels as well,
>
> Not every code point which is valid for U-labels is allowed in A-labels.

Of course; the point is the other way around: because A-label
characters are valid, A-labels could be put there.  Do we want that?
Clearly, 商业.中国 is OK.  Is this text meant to allow
xn--vhqr8o.xn--fiqs8s ?  The text certainly says no, explicitly, but
"this means that" doesn't follow from the list of characters that are
allowed.  The text seems odd in that regard.

> I think R-LDH labels should not be explicitly disallowed, as this would
> mean that the PRECIS profile for XMPP addresses needs to become aware of
> the semantic of the string, instead of simply checking and performing on
> operations codepoints. But there is probably no use case for R-LDH
> labels in domainparts.

But that's already necessary because of what the text says about A-labels.

> > 2. Earlier, in Section 3.8, is this text that seems rather odd to me:
> >
> >    If the domainpart includes a final character considered to be a label
> >    separator (dot) by [RFC1034]
> >
> > When I look at RFC 1034, I see that there's no mention of label
> > separator at all, and no set of characters that are considered to be
> > so.  It simply says:
> >
> >    When a user needs to type a domain name, the length of each label is
> >    omitted and the labels are separated by dots (".").
> >
> > Is there a reason for that specific text in Section 3.2, or are we
> > just looking for the 'DNS label separator "dot" (U+002E, FULL STOP)'
> > as suggested in the errata report?
>
> I think so.

That's an "Is it A or B" question, so "I think so" doesn't answer it.
So I'll change the question and just ask if there's a reason to use
that text in Section 3.2 that cites 1034.  I think Peter is the best
person to answer that, as he wrote the text and might remember why it
was said that way.

> And yes, "label" and "Label separator" in RFC 7622 should
> probably be qualified with DNS and a reference to the relevant
> specifications should be inserted.
>
> > My sense is that the intended replacement *might* be this, though I'm
> > not sure and need discussion/confirmation:
> >
> >    An entity that prepares a string for inclusion in an XMPP
> > domainpart slot MUST
> >    ensure that the string consists only of NR-LDH labels and U-labels,
> > as defined
> >    in [RFC5890], separated by the DNS label separator "dot" (U+002E, FULL STOP).
>
> I just occurred to me, after submitting the errata of course, that this
> may not be enough. Since domainparts can also act as holder for IPv6
> addresses, we also need to allow ':', '[' and ']', as they are also not
> valid characters in NR-LDH labels and U-labels.
>
> Hence my refined replacement text would be:
>
>   An entity that prepares a string for inclusion in an XMPP domainpart
>   slot MUST ensure that the string consists only of
>   - codepoints allowed in NR-LDH labels and U-labels, as defined in
>     [RFC5890]
>   - . U+002E (FULL STOP, DNS label separator "dot")
>   - : U+003A (COLON)
>   - ] U+005B (LEFT SQUARE BRACKET)
>   - [ U+005D (RIGHT SQUARE BRACKET)

And all that tells me that this is likely to be "Held for Document
Update", if there's more discussion needed to sort out the real intent
and correct fix.  But I'd very much like to hear from Peter and/or Joe
before we settle this.

And, Florian, thanks for making the errata report and for the quick
response to discussion.

Barry