Re: [netmod] AD review of draft-ietf-netmod-system-mgmt

Randy Presuhn <randy_presuhn@mindspring.com> Fri, 13 December 2013 22:00 UTC

Return-Path: <randy_presuhn@mindspring.com>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 02A671AE41A for <netmod@ietfa.amsl.com>; Fri, 13 Dec 2013 14:00:10 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001] autolearn=ham
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 CCqiSibm6sQz for <netmod@ietfa.amsl.com>; Fri, 13 Dec 2013 14:00:07 -0800 (PST)
Received: from elasmtp-kukur.atl.sa.earthlink.net (elasmtp-kukur.atl.sa.earthlink.net [209.86.89.65]) by ietfa.amsl.com (Postfix) with ESMTP id 8A9F21AE409 for <netmod@ietf.org>; Fri, 13 Dec 2013 14:00:07 -0800 (PST)
DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=dk20050327; d=mindspring.com; b=XQvpWFdH6tbnIMhYKP4qibt2iCHZPQbWHXySDolrilhb2cfnYVONUD+sLy8Tntxy; h=Message-ID:Date:From:Reply-To:To:Subject:Mime-Version:Content-Type:Content-Transfer-Encoding:X-Mailer:X-ELNK-Trace:X-Originating-IP;
Received: from [209.86.224.34] (helo=elwamui-hound.atl.sa.earthlink.net) by elasmtp-kukur.atl.sa.earthlink.net with esmtpa (Exim 4.67) (envelope-from <randy_presuhn@mindspring.com>) id 1Vram8-000434-7a for netmod@ietf.org; Fri, 13 Dec 2013 17:00:00 -0500
Received: from 99.187.237.104 by webmail.earthlink.net with HTTP; Fri, 13 Dec 2013 17:00:00 -0500
Message-ID: <30185064.1386972000252.JavaMail.root@elwamui-hound.atl.sa.earthlink.net>
Date: Fri, 13 Dec 2013 14:00:00 -0800
From: Randy Presuhn <randy_presuhn@mindspring.com>
To: netmod@ietf.org
Mime-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: EarthLink Zoo Mail 1.0
X-ELNK-Trace: 4488c18417c9426da92b9037bc8bcf44d4c20f6b8d69d8889e105617274a0edb326bf927e494a4e52e7da4c61fa2474f350badd9bab72f9c350badd9bab72f9c
X-Originating-IP: 209.86.224.34
Subject: Re: [netmod] AD review of draft-ietf-netmod-system-mgmt
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
Reply-To: Randy Presuhn <randy_presuhn@mindspring.com>
List-Id: NETMOD WG list <netmod.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netmod>, <mailto:netmod-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/netmod/>
List-Post: <mailto:netmod@ietf.org>
List-Help: <mailto:netmod-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netmod>, <mailto:netmod-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 13 Dec 2013 22:00:10 -0000

Hi -

>From: Ladislav Lhotka <lhotka@nic.cz>
>Sent: Dec 13, 2013 11:58 AM
>To: Randy Presuhn <randy_presuhn@mindspring.com>
>Cc: Martin Björklund <mbj@tail-f.com>, netmod@ietf.org
>Subject: Re: [netmod] AD review of draft-ietf-netmod-system-mgmt
>
>
>On 13 Dec 2013, at 20:34, Randy Presuhn <randy_presuhn@mindspring.com> wrote:
>
>> Hi -
>> 
>>> From: Martin Bjorklund <mbj@tail-f.com>
>>> Sent: Dec 12, 2013 11:22 PM
>>> To: randy_presuhn@mindspring.com
>>> Cc: netmod@ietf.org
>>> Subject: Re: [netmod] AD review of draft-ietf-netmod-system-mgmt
>>> 
>>> Randy Presuhn <randy_presuhn@mindspring.com> wrote:
>>>> Hi -
>>>> 
>>>>> From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
>>>>> Sent: Dec 12, 2013 3:52 AM
>>>>> To: Randy Presuhn <randy_presuhn@mindspring.com>, h@elstar.local
>>>>> Cc: netmod@ietf.org
>>>>> Subject: Re: [netmod] AD review of draft-ietf-netmod-system-mgmt
>>>>> 
>>>>> On Thu, Dec 12, 2013 at 12:42:57AM -0800, Randy Presuhn wrote:
>>>>>> 
>>>>>>>   o  An implementation MUST allow any legal "string" (YANG string).
>>>>>> 
>>>>>> There are good reasons to restrict formatting and control characters -
>>>>>> I'll assume YANG strings do this already.  If not, that's another long
>>>>>> discussion.
>>>>> 
>>>>> RFC 6020 says:
>>>>> 
>>>>>  The string built-in type represents human-readable strings in YANG.
>>>>>  Legal characters are tab, carriage return, line feed, and the legal
>>>>>  characters of Unicode and ISO/IEC 10646 [ISO.10646]:
>>>>> 
>>>>>    ;; any Unicode character, excluding the surrogate blocks,
>>>>>    ;; FFFE, and FFFF.
>>>>>    string = *char
>>>>>    char = %x9 / %xA / %xD / %x20-D7FF / %xE000-FFFD /
>>>>>           %x10000-10FFFF
>>>>> 
>>>>> And so far, we have used these strings without further restrictions in
>>>>> data models when there was something to be named.
>>>> 
>>>> Very odd.  It restricts the C0 controls, but permits the C1
>>>> control codes?  I hope someone thought that through carefully.
>>> 
>>> It is what XML Schema 1.0 says is a string.  See
>>> http://www.w3.org/TR/xmlschema-2/#string and the reference to
>>> http://www.w3.org/TR/2000/WD-xml-2e-20000814#NT-Char
>> 
>> Let me be more direct.  To exclude, for example,
>> VT (vertical tab) but at the same time to include
>> RI (reverse line feed) in the set of permitted
>> characters seems ill-advised, to say the least.
>
>That was the (somewhat arbitrary) decision taken for XML 1.0.
>And since it is the serialization format for NETCONF, it was
>quite logical to adopt it for YANG, too.

This has nothing to do with serialization.  This is
a question of which code points are permitted within
strings intended for human consumption.

>> I hope the rationale for including the C1 controls
>> (%x80-9F) while quite correctly severely limiting
>> the C0 controls is documented somewhere.
>
>Note that XML 1.1 allows #x1..#x1f, represented as
>character references.
...

That's beside the point.  Permitting a reverse line feed
(or any of the other C1 controls) in sysContact, while
prohibiting a vertical tab, makes no sense at all.  See
http://en.wikipedia.org/wiki/C0_and_C1_control_codes#C1_set
for an overview of this rogues' gallery of characters,
and consider whether it's really a good idea to permit
them for use in labeling interfaces, etc.


Note that we took a somewhat different course in defining
SnmpAdminString in RFC 3411, and this results in a technical
incompatibility.  RFC 3411 addresses the issue of C0 and C1
with a mere recommendation: "The use of control codes should
be avoided."  What this means is that it is perfectly legal,
though operationally not recommended, for a MIB object with
syntax SnmpAdminString (not further constrained by the object-
type's description) to contain code points *prohibited*
by the RFC 6020 string type.

Randy