[Date Prev][Date Next] [Chronological] [Thread] [Top]

RE: Protocol: Ignore SEQUENCE elements...



Excuse me, but how can you possibly ignore an unknown alternative in a CHOICE type? What if LDAMessage.protocolOp is not one of the published ones? Do you say, "Well, at least I got a messageID - let's see if there are controls." The same for enumerated types.
 
The beauty of ignoring (trailing) unrecognised items is that you already have enough to form a legal operation - additional items would merely have the same status as controls.
 
Ron
-----Original Message-----
From: owner-ietf-ldapbis@OpenLDAP.org [mailto:owner-ietf-ldapbis@OpenLDAP.org]On Behalf Of Jim Sermersheim
Sent: Wednesday, 17 September 2003 14:39
To: ietf-ldapbis@OpenLDAP.org
Subject: Re: Protocol: Ignore SEQUENCE elements...

<Second try. I got no response last time.>

>>> "Jim Sermersheim" <jimse@novell.com> 7/14/03 3:16:38 PM >>>
All,

There is the statement in [Protocol] that instructs:
"Because of the implied extensibility, clients and servers MUST ignore
trailing SEQUENCE elements whose tags they do not recognize."

This is basically the same text as RFC2251 (we added the _why_, and the
word "trailing").

But I think this falls short of what it really intends to say. I think
that what it really intends to say is that:
"protocol peers MUST ignore the presence of arbitrary unexpected
extension additions above those defined (if any) in a SEQUENCE or SET
type, or of an unknown alternative in a CHOICE type, or an unknown
ENUMERATION in an enumerated type, or of an unexpected length or value
of a type whose constraint is extensible."

I just s! tole most of that from X.680, thus it could be shortened with a
reference, but I think the information might be handy. Also, we should
likely preserve the "trailing" word.

comments?

Jim