Subject: Re: [Netconf] xml start directive with ssh

From: Margaret Wasserman <[email-masked]>
Date: Tue, 24 Nov 2009 08:15:54 -0500

Hi Andy,

Andy Bierman <andy at netconfcentral.com> wrote:
 > WashamFan wrote:
 >> From this sentence:
 >>
 >> Implementations MUST skip
 >> over these messages by searching for an 'xml' start directive, which
 >> MUST be followed by a <hello> element in the 'NETCONF' namespace.
 >>
 >> <hello> message with an XML declaration is a MUST.

 > This text is a perfect example of the "CLI mentality" in place when  
NETCONF
 > was written. It was assumed that implementations would do a normal  
CLI login,
 > and then magically (or manually) switch to "NETCONF mode", after a  
bunch of
 > screen-scraping. (Wrong!)

I'm working on an update for RFC4742bis starting from the -06 version
of the draft that we submitted to the IESG, and I thought you might be
interested to know that the text quoted above was not in the Internet
Draft that the WG submitted to the IESG; it was added as an IESG note
in the late stages of document approval.  I can't tell from the  
tracker why
it was added, but there is no indication that it reflected the WG's
mentality at all.

The actual RFC editor note is included below.  Our original text only
concerned the case of SSHv1, when a subsystem would not be
available -- this was something we discussed in the WG back then,
although it isn't really an issue today.  When the text was modified
(via the RFC editor note) during IESG review, that distinction was
elminated and the additional requirement for an XML start directive
was added.

Given that Bert was the AD at the time, and he was always careful
about these things, I am sure that the netconf WG chairs (Andy and
Simon Leinin) and the document authors (Ted Goddard and I) saw
this RFC editor note and explicitly approved it.  So, Andy, it looks
like you, Bert and I can blame ourselves for this mistake, but it would
be unfair to blame the WG.  Fortunately, we now have an opportunity to
correct it.

Margaret

- In section 3, page 3 (last line) and 4:

OLD:

SSHv1. Running NETCONF as an SSH subsystem avoids the need for
the script to recognize shell prompts or skip over extraneous  
information,
such as a system message that is sent at shell start-up. However, if a
subsystem cannot be used, it should be possible for a client to skip  
over
any system messages that are sent at shell start-up by searching for a
NETCONF <hello> element. Note that this may not avoid problems if
system messages are recieved later in the session.

NEW:

SSHv1. Running NETCONF as an SSH subsystem avoids the need for the
script to recognize shell prompts or skip over extraneous information,  
such
as a system message that is sent at shell start-up. However, even when a
subsystem is used, some extraneous messages may be printed by the user's
start-up scripts. Implementations MUST skip over these messages by
searching for an 'xml' start directive, which MUST be followed by a  
<hello>
element in the 'NETCONF' namespace.

---

From: Ladislav Lhotka <[email-masked]>
Date: Wed, 25 Nov 2009 18:44:07 +0100

> it was added, but there is no indication that it reflected the WG's

As a relative newcomer, I am surprised that such things can so easily
happen, given the otherwise meticulous IETF workflow. Another such
mishap was the terminating sequence "]]>]]>" - from the mailing list
archive, it seems there was a strong agreement in the WG, but on
something completely different, namely on using processing instruction
for this purpose. But this probably cannot be undone any more.

Lada

> _______________________________________________
> Netconf mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/netconf

-- 
Ladislav Lhotka, CESNET
PGP Key ID: E74E8C0C

---

From: Margaret Wasserman <[email-masked]>
Date: Wed, 25 Nov 2009 16:12:15 -0500

Hi Lada,

> for this purpose. But this probably cannot be undone any more.

The ']]>]]>' terminating sequence was in the document from an early  
version, including the versions that went through Working Group LC and  
IETF LC.

Margaret

---

From: Ladislav Lhotka <[email-masked]>
Date: Thu, 26 Nov 2009 13:45:24 +0100

> version, including the versions that went through Working Group LC and  

Hmm, I only found the thread started by this Andy's message:
http://www.ops.ietf.org/lists/netconf/netconf.2003/msg00988.html

This thread only discusses <?eom?> (and its modifications) as the EOM
marker, I couldn't find any proposal of using "]]>]]>" instead.

Lada

-- 
Ladislav Lhotka, CESNET
PGP Key ID: E74E8C0C

---

From: Margaret Wasserman <[email-masked]>
Date: Thu, 26 Nov 2009 09:13:14 -0500

Hi Lada,

The decision to use ']]>]]>' as the end-of-message marker was made at  
the IETF 59 in Seoul, Korea (Feb/March, 2004), as indicated in the  
minutes from that meeting:

http://www.ietf.org/proceedings/59/

The chairs communicated their consensus call on this issue to the list  
(along with consensus calls for a number of other open issues) on  
March 11, 2004, in this message:

http://www.ops.ietf.org/lists/netconf/netconf.2004/msg00218.html

Since there was no objection to that consensus call, it was added to  
the next version of the document (draft-ietf-netconf-ssh-01.txt  
published in May, 2004), and it has been in the document ever since.

Margaret

---

From: Ladislav Lhotka <[email-masked]>
Date: Fri, 27 Nov 2009 10:10:31 +0100

Hi, Margaret,

thank you for the clarification, Google search didn̈́'t return these
documents, also because the sequence was "misspelled" in the ML message.

Lada

-- 
Ladislav Lhotka, CESNET
PGP Key ID: E74E8C0C