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

RE: binary syntax suggestion (Was: AttributeTypeValue and binary)



Kurt,

RFC 2251 describes how attribute values are carried in protocol. RFC 2252
should describe just the attribute values. I feel the comments on the OCTET
STRING wrapper are misplaced - there is no wrapping of the value. The fact
is that the value (any value) will be wrapped only in the protocol.

Ron.

-----Original Message-----
From: Kurt D. Zeilenga [mailto:Kurt@OpenLDAP.org]
Sent: Saturday, 20 January 2001 16:02
To: ietf-ldapbis@OpenLDAP.org
Subject: binary syntax suggestion (Was: AttributeTypeValue and binary)


I think the RFC2252 specification of the binary syntax quite lacking.

6.2. Binary
   ( 1.3.6.1.4.1.1466.115.121.1.5 DESC 'Binary' )
   Values in this syntax are encoded as described in section 4.3.1.

4.3.1  Binary Transfer of Values
   This encoding format is used if the binary encoding is requested by
   the client for an attribute, or if the attribute syntax name is
   "1.3.6.1.4.1.1466.115.121.1.5".  The contents of the LDAP 
   AttributeValue or AssertionValue field is a BER-encoded instance of
   the attribute value or a matching rule assertion value ASN.1 data
   type as defined for use with X.500. (The first byte inside the OCTET
   STRING wrapper is a tag octet.  However, the OCTET STRING is still
   encoded in primitive form.)

Though the first sentence says it applies to both ";binary" and the
binary syntax, the second sentence makes no sense in the context of
the binary syntax.  I believe the intent of the binary syntax is to
allow values conforming to any BER-encoded instance of any ASN.1
data type definition and, like other syntaxes, attribute type
specifications may specify additional restrictions such as limiting
the values to any BER-encoded instance of a specific ASN.1 data type.
The uses of this syntax that I've seen use it in this manner.

I suggest 4.3.1 be stricken and 6.2 be replaced with:

6.2. Binary

   ( 1.3.6.1.4.1.1466.115.121.1.5 DESC 'Binary' )

   Each value of this syntax is a BER-encoded instance of
   an ASN.1 data type definition.  (The first octet inside
   the OCTET STRING wrapper is a tag octet.  However, the
   OCTET STRING is still encoded in primitive form). Values
   of this syntax MUST NOT be transferred using Binary Option
   [RFC2251, 4.1.5.1].

   Attribute type, matching rule, and other specifications
   which make use of this syntax MAY place further restrict
   upon values of this syntax including restricting values to
   instances of a specific ASN.1 data type or restricting
   values to those produced by a subset of BER.  Enforcement
   of additional restrictions is OPTIONAL.


Comments?