INTERNET-DRAFT                                   Kurt D. Zeilenga
Intended Category: BCP                        OpenLDAP Foundation
Expires in six months                                 12                                 17 May 2002

                       IANA Considerations for LDAP

Status of Memo

  This document is an Internet-Draft and is in full conformance with all
  provisions of Section 10 of RFC2026.

  This document is intended to be, after appropriate review and
  revision, submitted to the RFC Editor as a Best Current Practice
  document.  Distribution of this memo is unlimited.  Technical
  discussion of this document will take place on the IETF LDAP Revision
  Working Group (LDAPbis) mailing list <>.
  Please send editorial comments directly to the document editor

  Internet-Drafts are working documents of the Internet Engineering Task
  Force (IETF), its areas, and its working groups.  Note that other
  groups may also distribute working documents as Internet-Drafts.
  Internet-Drafts are draft documents valid for a maximum of six months
  and may be updated, replaced, or obsoleted by other documents at any
  time.  It is inappropriate to use Internet-Drafts as reference
  material or to cite them other than as ``work in progress.''

  The list of current Internet-Drafts can be accessed at
  <>. The list of
  Internet-Draft Shadow Directories can be accessed at

  Copyright 2002, The Internet Society.  All Rights Reserved.

  Please see the Copyright section near the end of this document for
  more information.


  This document provides procedures for registering extensible elements
  of LDAP (Lightweight Directory Access Protocol).  The document also
  provides guidelines to IANA (Internet Assigned Numbers Authority)
  describing conditions under which new values can be assigned.

1. Introduction

  The Lightweight Directory Access Protocol [LDAPTS] (LDAP) is an
  extensible protocol.  LDAP supports:
    - addition of new operations,
    - extension of existing operations, and
    - extensible schema.

  This document details procedures for registering values of used to
  unambiguously identify extensible elements of the protocol including:
    - LDAP message types,
    - LDAP result codes,
    - LDAP authentication methods,
    - LDAP attribute description options, and
    - Object Identifier descriptors.

  These registries are maintained by the Internet Assigned Numbers
  Authority (IANA).

  In addition, this document provides guidelines to IANA describing the
  conditions under which new values can be assigned.

2. Terminology and Conventions

  This section details terms and conventions used in this document.

2.1. Policy Terminology

  The terms "IESG Approval", "Standards Action", "IETF Consensus",
  "Specification Required", "First Come First Served", "Expert Review",
  and "Private Use" are used as defined in BCP 26 [RFC2434].

2.2. Requirement Terminology

  The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
  document are to be interpreted as described in BCP 14 [RFC2119].  In
  this case, "the specification" as used by BCP 14 refers to the
  processing of protocols being submitted to the IETF standards process.

2.3. Common ABNF Productions

  A number of syntaxes in this document are described using ABNF
  [RFC2234].  These syntaxes rely on the following common productions:

       ALPHA = %x41-5A / %x61-7A    ; A-Z / a-z

       LDIGIT = %x31-39             ; 1-9

       DIGIT = %x30 / LDIGIT        ; 0-9

       HYPHEN = %x2D                ; "-"

       DOT = %x2E                   ; "."

       number = DIGIT / ( LDIGIT 1*DIGIT )

       keychar = ALPHA / DIGIT / HYPHEN

       leadkeychar = ALPHA

       keystring = leadkeychar *keychar

  A keyword is a case-insensitive string of UTF-8 [RFC2279] encoded
  characters from the Universal Character Set (UCS) [ISO10646]
  restricted to the <keystring> production.

3.  IANA Considerations for LDAP

  This section details each kind of protocol value which can be
  registered and provides IANA guidelines on how to assign new values.

3.1. Object Identifiers

  Numerous LDAP schema and protocol elements are identified by Object
  Identifiers.  Specifications which assign OID to elements SHOULD state
  who delegated the OIDs for its use.

  For IETF developed elements, OIDs under "Internet Directory Numbers"
  ( SHOULD be used.  IANA will assign numbers under this OID
  arc upon Expert Review with Specification Required.  Only one OID per
  specification SHOULD be assigned.  The specification MAY then assign
  any number of OIDs within this arc without further coordination with

  For elements developed by others, any properly delegated OID can be
  used, including those under "Internet Private Enterprise Numbers"
  ( assigned by IANA

  To avoid interoperability problems between early implementors of
  ''works in progress'' and implementors of the published specification
  (e.g., the RFC), experimental OIDs SHOULD be used in ''works in
  progress''.  Experimental OIDs MUST replaced before publication.  OIDs
  under the Internet Experimental OID arc ( may be used for
  this purpose.

  Practices for IANA assignment of Internet Enterprise and Experimental
  OIDs are detailed in STD15 [RFC1157]. STD 16 [RFC1155].

3.2. Object Identifier Descriptors

  LDAP allows short descriptive names (or descriptors) to be used
  instead of a numeric Object Identifier to identify protocol extensions
  [RFC2251], schema elements [RFC2252], LDAP URL [RFC2255] extensions,
  and other objects.  Descriptors SHALL be restricted to strings of
  UTF-8 encoded UCS characters restricted by the following ABNF:

       name = keystring

  Descriptors are case-insensitive.

  Multiple names MAY be assigned to a given OID.  For purposes of
  registration, an OID SHALL be represented in numeric OID form
  conforming to the ABNF:

       numericoid = number *( DOT number ) ; e.g.

  While the protocol places no maximum length restriction upon
  descriptors, they SHOULD be short.  Descriptors longer than 48
  characters MAY be viewed as too long to register.  IANA MAY reject
  obviously bogus registrations.

  Descriptors beginning with "x-" are for Private Use and SHALL NOT be

  Descriptors beginning with "e-" are reserved for experiments.  IANA
  SHALL register any descriptor beginning with "e-" on a First Come
  First Served basis.

  Expert Review is REQUIRED before accepting registration of all other

  IANA SHALL NOT verify the registrant "owns" the OID being named.

  The OID namespace is managed by The ISO/IEC Joint Technical Committee
  1 - Subcommittee 6.

3.3. AttributeDescription Options

  An AttributeDescription [RFC2251, Section 4.1.5] can contain zero or
  more options specifying additional semantics.  An option SHALL be
  restricted to a string UTF-8 encoded UCS characters limited by the
  following ABNF:

       option = keystring

  Options are case-insensitive.

  While the protocol places no maximum length restriction upon option
  strings, they SHOULD be short.  Options longer than 24 characters MAY
  be viewed as too long to register.  IANA MAY reject obviously bogus

  Values ending with a hyphen ("-") reserve all option names which start
  with the name.  For example, the registration of the option
  "optionFamily-" reserves all options which start with "optionFamily-"
  for some related purpose.

  Options beginning with "x-" are for Private Use and SHALL NOT

  Options beginning with "e-" are reserved for experiments.  IANA SHALL
  register any option beginning with "e-" on a First Come First Served

  IANA SHALL register other options by either Standards Action or Expert
  Review with Specification Required.

3.4. LDAP Message Types

  Each protocol message is encapsulated in an LDAPMessage envelope
  [RFC2251, Section 4.1.1].  The protocolOp CHOICE indicates the type of
  message encapsulated.  Each message type consists of a keyword and a
  non-negative choice number is combined with the class (APPLICATION)
  and data type (CONSTRUCTED or PRIMITIVE) to construct the BER tag in
  the message's encoding.  The choice numbers for existing protocol
  messages are implicit in the protocol's ASN.1 defined in [RFC2251].

  New values SHALL only be registered by Standards Track action.

  Note: LDAP provides extensible messages which reduces, but does not
        eliminate, the need to add new message types.

3.5. LDAP Result Codes

  LDAP result messages carry an resultCode enumerated value to indicate
  the outcome of the operation [RFC2251, Section 4.1.10].  Each result
  code consists of a keyword and a non-negative integer.

  IANA SHALL register new resultCode integers in the range 0-1023 upon
  Standards Action, in the range 1024-4095 with Expert Review with
  Specification Required, and in the range 4096-16383 on a First Come
  First Served basis.  Keywords associated with integers in the range
  0-4095 SHALL NOT start with "e-" or "x-".  Keywords associated with
  integers in the range 4096-16383 SHALL start with "e-".  Values
  greater than or equal to 16384 and keywords starting with "x-" are for
  Private Use and SHALL NOT be registered.

  IANA MAY reject obviously bogus registrations.

3.6. LDAP Authentication Method

  The LDAP Bind operation supports multiple authentication methods
  [RFC2251, Section 4.2].  Each authentication choice consists of a
  keyword and a non-negative integer.

  Authentication methods usage SHALL be classified using one of the
  following terms:

    COMMON      - method is appropriate for common use on the Internet,
    LIMITED USE - method is appropriate for limited use,
    OBSOLETE    - method has been deprecated or otherwise found to be
                  inappropriate for any use.

  IANA SHALL NOT register new OBSOLETE authentication methods.  Methods
  without publicly available specifications SHALL NOT be classified as
  COMMON.  IANA MAY reject obviously bogus registrations.

  IANA SHALL register new authentication method integers in the range
  0-1023 upon Standards Action, in the range 1024-4095 with Expert
  Review with Specification Required, and in the range 4096-16383 on a
  First Come First Served basis.  Keywords associated with integers in
  the range 0-4095 SHALL NOT start with "e-" or "x-".  Keywords
  associated with integers in the range 4096-16383 SHALL start with
  "e-".  Values greater than or equal to 16384 and keywords starting
  with "x-" are for Private Use and SHALL NOT be registered.

  Note: LDAP supports SASL [RFC2222] as an Authentication CHOICE.  SASL
        is an extensible LDAP authentication method.

3.7. Directory Systems Names

  The IANA-maintained "Directory Systems Names" registry [IANADSN] of
  valid keywords for well known attributes used in the LDAPv2 string
  representation of a distinguished name [RFC1779].  RFC 1779 was
  obsoleted by RFC 2253.

  Directory systems names are not known to be used in any other context.
  LDAPv3 uses Object Identifier Descriptors [Section 3.2] (which have a
  different syntax than directory system names).

  IANA SHALL NOT register new Directory System Names.  For historical
  purposes, the current list of registered names SHOULD remain

4. Registration Procedure

  The procedure given here MUST be used by anyone who wishes to use a
  new value of a type described in Section 3 of this document.

  The first step is for the requester to fill out the appropriate form.
  Templates are provided in Appendix A.

  If the policy is Standards Action, the completed form SHOULD be
  provided to the IESG with the request for Standards Action.  Upon
  approval of the Standards Action, the IESG SHALL forward the request
  (possibly revised) to IANA.  The IESG SHALL be viewed as the owner of
  all values requiring Standards Action.

  If the policy is Expert Review, the requester SHALL post the completed
  form to the <> mailing list for public review.
  The review period is two (2) weeks.  If a revised form is later
  submitted, the review period is restarted.  Anyone may subscribe to
  this list by sending a request to <>.
  During the review, objections may be raised by anyone (including the
  Expert) on the list.  After completion of the review, the Expert,
  based upon public comments, SHALL either approve the request and
  forward it to the IESG OR deny the request.  In either case, the
  Expert SHALL promptly notify the requester of the action .  Actions of
  the Expert may be appealed [RFC2026].  The Expert is appointed by
  Applications Area Director(s).  The requester is viewed as the owner
  of values registered under Expert Review.

  If the policy is First Come First Served, the requester SHALL submit
  the completed form directly to the IANA <>.  The
  requester is viewed as the owner of values registered under First Come
  First Served.

  Neither the Expert nor IANA will take position on the claims of
  copyright or trademarks issues regarding completed forms.

5. Registration Maintenance

  This section discusses maintenance of registrations.

5.1. Lists of Registered Values

  IANA makes lists of registered values readily available to the
  Internet community on their web site <>.

5.2. Change Control

  The registration owner MAY update the registration subject to the same
  constraints and review as with new registrations.  In cases where the
  owner is not unable or unwilling to make necessary updates, the IESG
  MAY assert ownership in order to update the registration.


  For cases where others (anyone other than the owner) have significant
  objections to the claims in a registration and the owner does not
  agree to change the registration, comments MAY be attached to a
  registration upon Expert Review.  For registrations owned by the IESG,
  the objections SHOULD be addressed by initiating a request for Expert

  The request form to these requests is ad hoc, but MUST include the
  specific objections to be reviewed and SHOULD contain (directly or by
  reference) materials supporting the objections.

6. Security Considerations

  The security considerations detailed in [RFC2434] are generally
  applicable to this document.  Additional security considerations
  specific to each namespace are discussed in Section 3 where

  Security considerations for LDAP are discussed in documents comprising
  the technical specification [LDAPTS].

7. Acknowledgment

  This document is a product of the IETF LDAP Revision (LDAPbis) Working
  Group.  Some text was borrowed from "Guidelines for Writing an IANA
  Considerations Section in RFCs" [RFC2434] by Thomas Narten and Harald

8. Author's Address

  Kurt D. Zeilenga
  OpenLDAP Foundation


9. Normative References

  [RFC1157]  J. Case, M. Fedor,

  [RFC1155]  M. Schoffstall, J. Davin, "A Simple
             Network Rose, K. McCloghrie, "Structure and Identification of
             Management Protocol (SNMP)", Information for TCP/IP-based Internets", STD 15 16
             (also RFC
             1157), 1155), May 1990.

  [RFC2026]  S. Bradner, "The Internet Standards Process -- Revision 3",
             BCP 9 (also RFC 2026), October 1996.

  [RFC2119]  S. Bradner, "Key words for use in RFCs to Indicate
             Requirement Levels", BCP 14 (also RFC 2119), March 1997.

  [RFC2234]  D. Crocker, P. Overell, "Augmented BNF for Syntax
             Specifications: ABNF", RFC 2234, November 1997.

  [RFC2251]  M. Wahl, T. Howes, S. Kille, "Lightweight Directory Access
             Protocol (v3)", RFC 2251, December 1997.

  [RFC2252]  M. Wahl, A. Coulbeck, T. Howes, S. Kille, "Lightweight
             Directory Access Protocol (v3):  Attribute Syntax
             Definitions", RFC 2252, December 1997.

  [RFC2255]  T. Howes, M. Smith, "The LDAP URL Format", RFC 2255,
             December, 1997.

  [RFC2256]  M. Wahl, "A Summary of the X.500(96) User Schema for use
             with LDAPv3", RFC 2256, December 1997.

  [RFC2279]  F. Yergeau, "UTF-8, a transformation format of ISO 10646",
             RFC 2279, January 1998.

  [RFC2434]  T. Narten, H. Alvestrand, "Guidelines for Writing an IANA
             Considerations Section in RFCs", BCP 26 (also RFC 2434),
             October 1998.

  [LDAPTS]   J. Hodges, R.L. Morgan, "Lightweight Directory Access
             Protocol (v3): Technical Specification",
             draft-ietf-ldapbis-ldapv3-ts-xx.txt (a work in progress).

  [IANADSN]  IANA, "Directory Systems Names",

  [ISO10646] Universal Multiple-Octet Coded Character Set (UCS) -
             Architecture and Basic Multilingual Plane, ISO/IEC 10646-1
             : 1993.

10. Informative References

  [RFC1779]  S. Kille, "A String Representation of Distinguished Names",
             RFC 1779, March 1995.

  [RFC2222]  J. Myers, "Simple Authentication and Security Layer
             (SASL)", RFC 2222, October 1997.

Appendix A.  Registration Templates

  This appendix provides registration templates for registering new LDAP

A.1.  LDAP Object Identifier Registration Template

  Subject: Request for LDAP OID Registration

  Person & email address to contact for further information:

  Specification: (I-D)

  Author/Change Controller:


  (Any comments that the requester deems relevant to the request)

A.2.  LDAP Descriptor Registration Template

  Subject: Request for LDAP Descriptor Registration
  Descriptor (short name):

  Object Identifier:

  Person & email address to contact for further information:

  Usage: (One of attribute type, URL extension,
            object class, or other)

  Specification: (RFC, I-D, URI)

  Author/Change Controller:


  (Any comments that the requester deems relevant to the request)

A.3.  LDAP Attribute Description Option Registration Template

  Subject: Request for LDAP Attribute Description Option Registration

  Option Name:

  Family of Options: (YES or NO)

  Person & email address to contact for further information:

  Specification: (RFC, I-D, URI)

  Author/Change Controller:


  (Any comments that the requester deems relevant to the request)

A.4.  LDAP Message Type Registration Template

  Subject: Request for LDAP Message Type Registration

  LDAP Message Name:

  Person & email address to contact for further information:

  Specification: (Approved I-D)


  (Any comments that the requester deems relevant to the request)

A.5.  LDAP Result Code Registration Template

  Subject: Request for LDAP Result Code Registration

  Result Code Name:

  Person & email address to contact for further information:

  Specification: (RFC, I-D, URI)

  Author/Change Controller:


  (Any comments that the requester deems relevant to the request)

A.6.  LDAP Authentication Method Registration Template

  Subject: Request for LDAP Authentication Method Registration

  Authentication Method Name:

  Person & email address to contact for further information:

  Specification: (RFC, I-D, URI)

  Intended Usage: (One of COMMON, LIMITED-USE, OBSOLETE)

  Author/Change Controller:


  (Any comments that the requester deems relevant to the request)

Appendix B.  Assigned Values

  The following values are currently assigned.

B.1.  Object Identifiers

  Currently registered "Internet Private Enterprise Numbers" can be
  found at <>.

  Currently registered "Internet Directory Numbers" can be found at

B.2.  Object Identifier Descriptors

  NAME                         Type OID [REF]
  ------------------------     ---- -----------------
  account                         O 0.9.2342.19200300.100.4.5 [RFC1274]
  alias                           O [RFC2256]
  aliasedEntryName                A [X.501]
  aliasedObjectName               A [RFC2256]
  altServer                       A [RFC2252]
  applicationEntity               O [RFC2256]
  applicationProcess              O [RFC2256]
  aRecord                         A 0.9.2342.19200300.100.1.26 [RFC1274]
  associatedDomain                A 0.9.2342.19200300.100.1.37 [RFC2164] [RFC1274]
  associatedInternetGateway       A [RFC2164]
  associatedName                  A 0.9.2342.19200300.100.1.38 [RFC1274]
  associatedORAddress             A [RFC2164]
  associatedX400Gateway           A [RFC2164]
  attributeTypes                  A [RFC2252]
  audio                           A 0.9.2342.19200300.100.1.55 [RFC1274]
  authorityRevocationList         A [RFC2256]
  bitStringMatch                  M [RFC2252]
  buildingName                    A 0.9.2342.19200300.100.1.48 [RFC1274]
  businessCategory                A [RFC2256]
  C                               A [RFC2256]
  cACertificate                   A [RFC2256]
  calCalAdrURI                    A 1.2.840.113556.1.4.481 [RFC2739]
  calCalURI                       A 1.2.840.113556.1.4.478 [RFC2739]
  calCAPURI                       A 1.2.840.113556.1.4.480 [RFC2739]
  calEntry                        O 1.2.840.113556.1.5.87 [RFC2739]
  calFBURL                        A 1.2.840.113556.1.4.479 [RFC2739]
  calOtherCalAdrURIs              A 1.2.840.113556.1.4.485 [RFC2739]
  calOtherCalURIs                 A 1.2.840.113556.1.4.482 [RFC2739]
  calOtherCAPURIs                 A 1.2.840.113556.1.4.484 [RFC2739]
  calOtherFBURLs                  A 1.2.840.113556.1.4.483 [RFC2739]
  caseExactIA5Match               M [RFC2252]
  caseIgnoreIA5Match              M [RFC2252]
  caseIgnoreListMatch             M [RFC2252]
  caseIgnoreMatch                 M [RFC2252]
  caseIgnoreOrderingMatch         M [RFC2252]
  caseIgnoreSubstringsMatch       M [RFC2252]
  certificateRevocationList       A [RFC2256]
  certificationAuthority          O [RFC2256]
  certificationAuthority-V2       O [RFC2256]
  CN                              A [RFC2256]
  cNAMERecord                     A 0.9.2342.19200300.100.1.31 [RFC1274]
  co                              A 0.9.2342.19200300.100.1.43 [RFC1274]
  commonName                      A [RFC2256]
  country                         O [RFC2256]
  countryName                     A [RFC2256]
  createTimestamp                 A [RFC2252]
  creatorsName                    A [RFC2252]
  cRLDistributionPoint            O [RFC2256]
  crossCertificatePair            A [RFC2256]
  DC                              A 0.9.2342.19200300.100.1.25 [RFC2247]
  dcObject                        O [RFC2247]
  deltaCRL                        O [RFC2587]
  deltaRevocationList             A [RFC2256]
  description                     A [RFC2256]
  destinationIndicator            A [RFC2256]
  device                          O [RFC2256]
  distinguishedName               A [RFC2256]
  distinguishedNameMatch          M [RFC2252]
  distinguishedNameTableEntry     O [RFC2293]
  distinguishedNameTableKey       A [RFC2293]
  dITContentRules                 A [RFC2252]
  dITRedirect                     A 0.9.2342.19200300.100.1.54 [RFC1274]
  dITStructureRules               A [RFC2252]
  dmd                             O [RFC2256]
  dmdName                         A [RFC2256]
  dnQualifier                     A [RFC2256]
  dNSDomain                       O 0.9.2342.19200300.100.4.15 [RFC1274]
  document                        O 0.9.2342.19200300.100.4.6 [RFC1274]
  documentAuthor                  A 0.9.2342.19200300.100.1.14 [RFC1274]
  documentIdentifier              A 0.9.2342.19200300.100.1.11 [RFC1274]
  documentLocation                A 0.9.2342.19200300.100.1.15 [RFC1274]
  documentPublisher               A 0.9.2342.19200300.100.1.56 [RFC1274]
  documentSeries                  O 0.9.2342.19200300.100.4.8 [RFC1274]
  documentTitle                   A 0.9.2342.19200300.100.1.12 [RFC1274]
  documentVersion                 A 0.9.2342.19200300.100.1.13 [RFC1274]
  domain                          O 0.9.2342.19200300.100.4.13 [RFC2247]
  domainComponent                 A 0.9.2342.19200300.100.1.25 [RFC2247]
  domainNameForm                  N [RFC2247]
  domainRelatedObject             O 0.9.2342.19200300.100.4.17 [RFC1274]
  drink                           A 0.9.2342.19200300.100.1.5 [RFC1274]
  dSA                             O [RFC2256]
  dSAQuality                      A 0.9.2342.19200300.100.1.49 [RFC1274]
  dynamicObject                   O [RFC2589]
  dynamicSubtrees                 A [RFC2589]
  enhancedSearchGuide             A [RFC2256]
  entryTtl                        A [RFC2589]
  extensibleObject                O [RFC2252]
  facsimileTelephoneNumber        A [RFC2256]
  favouriteDrink                  A 0.9.2342.19200300.100.1.5 [RFC1274]
  friendlyCountry                 O 0.9.2342.19200300.100.4.18 [RFC1274]
  friendlyCountryName             A 0.9.2342.19200300.100.1.43 [RFC1274]
  generalizedTimeMatch            M [RFC2252]
  generalizedTimeOrderingMatch    M [RFC2252]
  generationQualifier             A [RFC2256]
  givenName                       A [RFC2256]
  GN                              A [RFC2256]
  groupOfNames                    O [RFC2256]
  groupOfUniqueNames              O [RFC2256]
  homePhone                       A 0.9.2342.19200300.100.1.20 [RFC1274]
  homePostalAddress               A 0.9.2342.19200300.100.1.39 [RFC1274]
  homeTelephone                   A 0.9.2342.19200300.100.1.20 [RFC1274]
  host                            A 0.9.2342.19200300.100.1.9 [RFC1274]
  houseIdentifier                 A [RFC2256]
  info                            A 0.9.2342.19200300.100.1.4 [RFC1274]
  initials                        A [RFC2256]
  integerFirstComponentMatch      M [RFC2252]
  integerMatch                    M [RFC2252]
  internationaliSDNNumber         A [RFC2256]
  janetMailbox                    A 0.9.2342.19200300.100.1.46 [RFC1274]
  jpegPhoto                       A 0.9.2342.19200300.100.1.60 [RFC1488]
  knowledgeInformation            A [RFC2256]
  L                               A [RFC2256]
  labeledURI                      A [RFC2079]
  labeledURIObject                A [RFC2079]
  lastModifiedBy                  A 0.9.2342.19200300.100.1.24 [RFC1274]
  lastModifiedTime                A 0.9.2342.19200300.100.1.23 [RFC1274]
  ldapSyntaxes                    A [RFC2251]
  locality                        O [RFC2256]
  localityName                    A [RFC2256]
  mail                            A 0.9.2342.19200300.100.1.3 [RFC2798]
  mailPreferenceOption            A 0.9.2342.19200300.100.1.47 [RFC1274]
  manager                         A 0.9.2342.19200300.100.1.10 [RFC1274]
  matchingRules                   A [RFC2252]
  matchingRuleUse                 A [RFC2252]
  mcgamTables                     A [RFC2164]
  mDRecord                        A 0.9.2342.19200300.100.1.27 [RFC1274]
  member                          A [RFC2256]
  mixerGateway                    O [RFC2164]
  mobile                          A 0.9.2342.19200300.100.1.41 [RFC1274]
  mobileTelephoneNumber           A 0.9.2342.19200300.100.1.41 [RFC1274]
  modifiersName                   A [RFC2252]
  modifyTimestamp                 A [RFC2252]
  mXRecord                        A 0.9.2342.19200300.100.1.28 [RFC1274]
  name                            A [RFC2256]
  nameForms                       A [RFC2252]
  namingContexts                  A [RFC2252]
  nSRecord                        A 0.9.2342.19200300.100.1.29 [RFC1274]
  numericStringMatch              M [RFC2252]
  numericStringSubstringsMatch    M [RFC2252]
  O                               A [RFC2256]
  objectClass                     A [RFC2256]
  objectClasses                   A [RFC2252]
  objectIdentifierFirstComponentMatch M [RFC2252]
  objectIdentifiersMatch          M [RFC2252]
  octetStringMatch                M [RFC2252]
  omittedORAddressComponent       O [RFC2164]
  oRAddressComponentType          A [RFC2164]
  organization                    O [RFC2256]
  organizationalPerson            O [RFC2256]
  organizationalRole              O [RFC2256]
  organizationalStatus            A 0.9.2342.19200300.100.1.45 [RFC1274]
  organizationalUnit              O [RFC2256]
  organizationalUnitName          A [RFC2256]
  organizationName                A [RFC2256]
  otherMailbox                    A 0.9.2342.19200300.100.1.22 [RFC1274]
  OU                              A [RFC2256]
  owner                           A [RFC2256]
  pager                           A 0.9.2342.19200300.100.1.42 [RFC1274]
  pagerTelephoneNumber            A 0.9.2342.19200300.100.1.42 [RFC1274]
  person                          O [RFC2256]
  personalSignature               A 0.9.2342.19200300.100.1.53 [RFC1274]
  personalTitle                   A 0.9.2342.19200300.100.1.40 [RFC1274]
  photo                           A 0.9.2342.19200300.100.1.7 [RFC1274]
  physicalDeliveryOfficeName      A [RFC2256]
  pilotDSA                        O 0.9.2342.19200300.100.4.21 [RFC1274]
  pilotObject                     O 0.9.2342.19200300.100.4.3 [RFC1274]
  pilotOrganization               O 0.9.2342.19200300.100.4.20 [RFC1274]
  pilotPerson                     O 0.9.2342.19200300.100.4.4 [RFC1274]
  pkiCA                           O [RFC2587]
  pkiUser                         O [RFC2587]
  postalAddress                   A [RFC2256]
  postalCode                      A [RFC2256]
  postOfficeBox                   A [RFC2256]
  preferredDeliveryMethod         A [RFC2256]
  presentationAddress             A [RFC2256]
  presentationAddressMatch        M [RFC2252]
  protocolInformation             A [RFC2256]
  protocolInformationMatch        M [RFC2252]
  qualityLabelledData             O 0.9.2342.19200300.100.4.22 [RFC1274]
  registeredAddress               A [RFC2256]
  residentialPerson               O [RFC2256]
  RFC822LocalPart                 O 0.9.2342.19200300.100.4.14 [RFC1274]
  RFC822Mailbox                   A 0.9.2342.19200300.100.1.3 [RFC1274]
  rFC822ToX400Mapping             O [RFC2164]
  roleOccupant                    A [RFC2256]
  room                            O 0.9.2342.19200300.100.4.7 [RFC1274]
  roomNumber                      A 0.9.2342.19200300.100.1.6 [RFC1274]
  searchGuide                     A [RFC2256]
  secretary                       A 0.9.2342.19200300.100.1.21 [RFC1274]
  seeAlso                         A [RFC2256]
  serialNumber                    A [RFC2256]
  simpleSecurityObject            O 0.9.2342.19200300.100.4.19 [RFC1274]
  singleLevelQuality              A 0.9.2342.19200300.100.1.50 [RFC1274]
  SN                              A [RFC2256]
  sOARecord                       A 0.9.2342.19200300.100.1.30 [RFC1274]
  ST                              A [RFC2256]
  stateOrProvinceName             A [RFC2256]
  street                          A [RFC2256]
  streetAddress                   A [RFC2256]
  strongAuthenticationUser        O [RFC2256]
  subschema                       O [RFC2252]
  subschemaSubentry               A [RFC2252]
  subtree                         O [RFC2293]
  subtreeMaximumQuality           A 0.9.2342.19200300.100.1.52 [RFC1274]
  subtreeMinimumQuality           A 0.9.2342.19200300.100.1.51 [RFC1274]
  supportedAlgorithms             A [RFC2256]
  supportedApplicationContext     A [RFC2256]
  supportedControl                A [RFC2252]
  supportedExtension              A [RFC2252]
  supportedLDAPVersion            A [RFC2252]
  supportedSASLMechanisms         A [RFC2252]
  surname                         A [RFC2256]
  table                           O [RFC2293]
  tableEntry                      O [RFC2293]
  telephoneNumber                 A [RFC2256]
  telephoneNumberMatch            M [RFC2252]
  telephoneNumberSubstringsMatch  M [RFC2252]
  teletexTerminalIdentifier       A [RFC2256]
  telexNumber                     A [RFC2256]
  textEncodedORAddress            A 0.9.2342.19200300.100.1.2 [RFC1274]
  textTableEntry                  O [RFC2293]
  textTableKey                    A [RFC2293]
  textTableValue                  A [RFC2293]
  title                           A [RFC2256]
  top                             O [RFC2256]
  uid                             A 0.9.2342.19200300.100.1.1 [RFC2253]
  uniqueIdentifier                A 0.9.2342.19200300.100.1.44 [RFC1274]
  uniqueMember                    A [RFC2256]
  uniqueMemberMatch               M [RFC2252]
  userCertificate                 A [RFC2256]
  userClass                       A 0.9.2342.19200300.100.1.8 [RFC1274]
  userId                          A 0.9.2342.19200300.100.1.1 [RFC1274]
  userPassword                    A [RFC2256]
  userSecurityInformation         O [RFC2256]
  x121Address                     A [RFC2256]
  x400ToRFC822Mapping             O [RFC2164]
  x500UniqueIdentifier            A [RFC2256]

  A => Attribute Type
  C => DIT Content Rule
  E => LDAP URL Extension
  M => Matching Rule
  N => Name Form
  O => Object Class

B.3.  Attribute Description Options

  Option            Owner  Reference
  ----------------  -----  ---------
  binary            IESG   [RFC2251]
  lang-*            IESG   [RFC2596]

  * family of options

B.4. LDAPMessage types

  Name                         Code Owner  Reference
  ---------------------------  ---- -----  ---------
  bindRequest                     0  IESG  [RFC2251]
  bindResponse                    1  IESG  [RFC2251]
  unbindRequest                   2  IESG  [RFC2251]
  searchRequest                   3  IESG  [RFC2251]
  searchResEntry                  4  IESG  [RFC2251]
  searchResDone                   5  IESG  [RFC2251]
  modifyRequest                   6  IESG  [RFC2251]
  modifyResponse                  7  IESG  [RFC2251]
  addRequest                      8  IESG  [RFC2251]
  addResponse                     9  IESG  [RFC2251]
  delRequest                     10  IESG  [RFC2251]
  delResponse                    11  IESG  [RFC2251]
  modDNRequest                   12  IESG  [RFC2251]
  modDNResponse                  13  IESG  [RFC2251]
  compareRequest                 14  IESG  [RFC2251]
  compareResponse                15  IESG  [RFC2251]
  abandonRequest                 16  IESG  [RFC2251]
  reserved                    17-18  IESG
  searchResRef                   19  IESG  [RFC2251]
  reserved                    20-22  IESG
  extendedReq                    23  IESG  [RFC2251]
  extendedResp                   24  IESG  [RFC2251]

B.5. resultCode values

  Name                         Code Owner  Reference
  ---------------------------  ---- -----  ---------
  success                         0  IESG  [RFC2251]
  operationsError                 1  IESG  [RFC2251]
  protocolError                   2  IESG  [RFC2251]
  timeLimitExceeded               3  IESG  [RFC2251]
  sizeLimitExceeded               4  IESG  [RFC2251]
  compareFalse                    5  IESG  [RFC2251]
  compareTrue                     6  IESG  [RFC2251]
  authMethodNotSupported          7  IESG  [RFC2251]
  strongAuthRequired              8  IESG  [RFC2251]
  reserved (partialResults)       9  IESG  [RFC2251]
  referral                       10  IESG  [RFC2251]
  adminLimitExceeded             11  IESG  [RFC2251]
  unavailableCriticalExtension   12  IESG  [RFC2251]
  confidentialityRequired        13  IESG  [RFC2251]
  saslBindInProgress             14  IESG  [RFC2251]
  noSuchAttribute                16  IESG  [RFC2251]
  undefinedAttributeType         17  IESG  [RFC2251]
  inappropriateMatching          18  IESG  [RFC2251]
  constraintViolation            19  IESG  [RFC2251]
  attributeOrValueExists         20  IESG  [RFC2251]
  invalidAttributeSyntax         21  IESG  [RFC2251]
  noSuchObject                   32  IESG  [RFC2251]
  aliasProblem                   33  IESG  [RFC2251]
  invalidDNSyntax                34  IESG  [RFC2251]
  reserved (isLeaf)              35  IESG  [RFC2251]
  aliasDereferencingProblem      36  IESG  [RFC2251]
  reserved                    37-47  IESG
  inappropriateAuthentication    48  IESG  [RFC2251]
  invalidCredentials             49  IESG  [RFC2251]
  insufficientAccessRights       50  IESG  [RFC2251]
  busy                           51  IESG  [RFC2251]
  unavailable                    52  IESG  [RFC2251]
  unwillingToPerform             53  IESG  [RFC2251]
  loopDetect                     54  IESG  [RFC2251]
  reserved                    55-63  IESG
  namingViolation                64  IESG  [RFC2251]
  objectClassViolation           65  IESG  [RFC2251]
  notAllowedOnNonLeaf            66  IESG  [RFC2251]
  notAllowedOnRDN                67  IESG  [RFC2251]
  entryAlreadyExists             68  IESG  [RFC2251]
  objectClassModsProhibited      69  IESG  [RFC2251]
  reserved (resultsTooLarge)     70  IESG  [RFC2251]
  reserved                    71-79  IESG
  other                          80  IESG  [RFC2251]
  reserved (APIs)             81-90  IESG  [RFC2251]

B.6. Bind Authentication Method

  Method      Value  Owner  Usage        Reference
  ------      -----  -----  -----------  -----------------
  simple          0  IESG   LIMITED USE  [RFC2251,RFC2829]
  krbv42LDAP      1  IESG   OBSOLETE*    [RFC1777]
  krbv42DSA       2  IESG   OBSOLETE*    [RFC1777]
  sasl            3  IESG   COMMON       [RFC2251,RFC2829]

  * These LDAPv2-only mechanisms were deprecated in favor LDAPv3 SASL
    authentication method, specifically the GSSAPI mechanism.

Copyright 2002, The Internet Society.  All Rights Reserved.

  This document and translations of it may be copied and furnished to
  others, and derivative works that comment on or otherwise explain it
  or assist in its implementation may be prepared, copied, published and
  distributed, in whole or in part, without restriction of any kind,
  provided that the above copyright notice and this paragraph are
  included on all such copies and derivative works.  However, this
  document itself may not be modified in any way, such as by removing
  the copyright notice or references to the Internet Society or other
  Internet organizations, except as needed for the  purpose of
  developing Internet standards in which case the procedures for
  copyrights defined in the Internet Standards process must be followed,
  or as required to translate it into languages other than English.

  The limited permissions granted above are perpetual and will not be
  revoked by the Internet Society or its successors or assigns.

  This document and the information contained herein is provided on an