IETF-SSH archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: When SSH standards noncompliance is a "feature"



> So RFC 4253 says:

>   When the connection has been established, both sides MUST send an
>   identification string.  This identification string MUST be
> 
>     SSH-protoversion-softwareversion SP { comments - optional } CR LF

Actually, it says

      SSH-protoversion-softwareversion SP comments CR LF

but then, in the following text, says that "[t]he 'comments' string is
OPTIONAL", by which I assume it means that the comments string may be
zero length.

4253 goes on to say that "[i]f the 'comments' string is included, a
'space' character (denoted above as SP, ASCII 32) MUST separate the
'softwareversion' and 'comments' strings".  It does not say whether the
space is mandatory if the comments string is not included; the "if"
implies that the space is optional, but that implication is weak, and
the syntax description does not make it look optional.

-> Question: is the space optional?  Should it be?

I think moussh would error if the banner is truncated as you described
(which I take to mean, the dash between protoversion and
softwareversion, and everything after it up to just before the CRLF, is
deleted).  I'm trying to improve moussh's diagnostics, and found myself
wondering whether the space is also required.

/~\ The ASCII				  Mouse
\ / Ribbon Campaign
 X  Against HTML		mouse%rodents-montreal.org@localhost
/ \ Email!	     7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B



Home | Main Index | Thread Index | Old Index