Initial version

This commit is contained in:
Julio Sánchez Fernández 1999-04-27 06:34:10 +00:00
parent a80ff50a67
commit ab0e842ee2
3 changed files with 803 additions and 0 deletions

View file

@ -0,0 +1,425 @@
# Standard schema from RFC2251-RFC2256
# Standard X.501(93) Operational Attribute Types from RFC2252
attribute ( 2.5.18.1 NAME 'createTimestamp' EQUALITY generalizedTimeMatch
ORDERING generalizedTimeOrderingMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.24
SINGLE-VALUE NO-USER-MODIFICATION USAGE directoryOperation )
attribute ( 2.5.18.2 NAME 'modifyTimestamp' EQUALITY generalizedTimeMatch
ORDERING generalizedTimeOrderingMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.24
SINGLE-VALUE NO-USER-MODIFICATION USAGE directoryOperation )
attribute ( 2.5.18.3 NAME 'creatorsName' EQUALITY distinguishedNameMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.12
SINGLE-VALUE NO-USER-MODIFICATION USAGE directoryOperation )
attribute ( 2.5.18.4 NAME 'modifiersName' EQUALITY distinguishedNameMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.12
SINGLE-VALUE NO-USER-MODIFICATION USAGE directoryOperation )
attribute ( 2.5.18.10 NAME 'subschemaSubentry'
EQUALITY distinguishedNameMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 NO-USER-MODIFICATION
SINGLE-VALUE USAGE directoryOperation )
attribute ( 2.5.21.5 NAME 'attributeTypes'
EQUALITY objectIdentifierFirstComponentMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.3 USAGE directoryOperation )
attribute ( 2.5.21.6 NAME 'objectClasses'
EQUALITY objectIdentifierFirstComponentMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.37 USAGE directoryOperation )
attribute ( 2.5.21.4 NAME 'matchingRules'
EQUALITY objectIdentifierFirstComponentMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.30 USAGE directoryOperation )
attribute ( 2.5.21.8 NAME 'matchingRuleUse'
EQUALITY objectIdentifierFirstComponentMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.31 USAGE directoryOperation )
# LDAP Operational Attributes from RFC2252
attribute ( 1.3.6.1.4.1.1466.101.120.5 NAME 'namingContexts'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 USAGE dSAOperation )
attribute ( 1.3.6.1.4.1.1466.101.120.6 NAME 'altServer'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 USAGE dSAOperation )
attribute ( 1.3.6.1.4.1.1466.101.120.7 NAME 'supportedExtension'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 USAGE dSAOperation )
attribute ( 1.3.6.1.4.1.1466.101.120.13 NAME 'supportedControl'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 USAGE dSAOperation )
attribute ( 1.3.6.1.4.1.1466.101.120.14 NAME 'supportedSASLMechanisms'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 USAGE dSAOperation )
attribute ( 1.3.6.1.4.1.1466.101.120.15 NAME 'supportedLDAPVersion'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 USAGE dSAOperation )
# LDAP Subschema Atrribute from RFC2252
attribute ( 1.3.6.1.4.1.1466.101.120.16 NAME 'ldapSyntaxes'
EQUALITY objectIdentifierFirstComponentMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.54 USAGE directoryOperation )
# X.500 Subschema attributes from RFC2252
attribute ( 2.5.21.1 NAME 'dITStructureRules' EQUALITY integerFirstComponentMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.17 USAGE directoryOperation )
attribute ( 2.5.21.7 NAME 'nameForms'
EQUALITY objectIdentifierFirstComponentMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.35 USAGE directoryOperation )
attribute ( 2.5.21.2 NAME 'dITContentRules'
EQUALITY objectIdentifierFirstComponentMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.16 USAGE directoryOperation )
# Object Classes from RFC2252
objectclass ( 1.3.6.1.4.1.1466.101.120.111 NAME 'extensibleObject'
SUP top AUXILIARY )
# ldapSyntaxes (operational) is admissible in next:
objectclass ( 2.5.20.1 NAME 'subschema' AUXILIARY
MAY ( dITStructureRules $ nameForms $ ditContentRules $
objectClasses $ attributeTypes $ matchingRules $
matchingRuleUse ) )
# Standard attribute types from RFC2256
attribute ( 2.5.4.0 NAME 'objectClass' EQUALITY objectIdentifierMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 )
attribute ( 2.5.4.1 NAME 'aliasedObjectName' EQUALITY distinguishedNameMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE )
# Defined, but no longer used
attribute ( 2.5.4.2 NAME 'knowledgeInformation' EQUALITY caseIgnoreMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768} )
attribute ( 2.5.4.3 NAME ( 'cn' 'commonName' ) SUP name )
attribute ( 2.5.4.4 NAME ( 'sn' 'surname' ) SUP name )
attribute ( 2.5.4.5 NAME 'serialNumber' EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.44{64} )
# (2-letter code from ISO 3166)
attribute ( 2.5.4.6 NAME ( 'c' 'countryName' ) SUP name SINGLE-VALUE )
attribute ( 2.5.4.7 NAME ( 'l' 'localityName' ) SUP name )
attribute ( 2.5.4.8 NAME ( 'st' 'stateOrProvinceName' ) SUP name )
attribute ( 2.5.4.9 NAME ( 'street' 'streetAddress' ) EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
attribute ( 2.5.4.10 NAME ( 'o' 'organizationName' ) SUP name )
attribute ( 2.5.4.11 NAME ( 'ou' 'organizationalUnitName' ) SUP name )
attribute ( 2.5.4.12 NAME 'title' SUP name )
attribute ( 2.5.4.13 NAME 'description' EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{1024} )
# Obsoleted by enhancedSearchGuide
attribute ( 2.5.4.14 NAME 'searchGuide'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.25 )
attribute ( 2.5.4.15 NAME 'businessCategory' EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
attribute ( 2.5.4.16 NAME 'postalAddress' EQUALITY caseIgnoreListMatch
SUBSTR caseIgnoreListSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.41 )
attribute ( 2.5.4.17 NAME 'postalCode' EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{40} )
attribute ( 2.5.4.18 NAME 'postOfficeBox' EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{40} )
attribute ( 2.5.4.19 NAME 'physicalDeliveryOfficeName' EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
attribute ( 2.5.4.20 NAME 'telephoneNumber' EQUALITY telephoneNumberMatch
SUBSTR telephoneNumberSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.50{32} )
attribute ( 2.5.4.21 NAME 'telexNumber'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.52 )
attribute ( 2.5.4.22 NAME 'teletexTerminalIdentifier'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.51 )
attribute ( 2.5.4.23 NAME ( 'facsimileTelephoneNumber' 'fax' )
SYNTAX 1.3.6.1.4.1.1466.115.121.1.22 )
attribute ( 2.5.4.24 NAME 'x121Address' EQUALITY numericStringMatch
SUBSTR numericStringSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.36{15} )
attribute ( 2.5.4.25 NAME 'internationaliSDNNumber' EQUALITY numericStringMatch
SUBSTR numericStringSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.36{16} )
attribute ( 2.5.4.26 NAME 'registeredAddress' SUP postalAddress
SYNTAX 1.3.6.1.4.1.1466.115.121.1.41 )
attribute ( 2.5.4.27 NAME 'destinationIndicator' EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.44{128} )
attribute ( 2.5.4.28 NAME 'preferredDeliveryMethod'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.14
SINGLE-VALUE )
attribute ( 2.5.4.29 NAME 'presentationAddress'
EQUALITY presentationAddressMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.43
SINGLE-VALUE )
attribute ( 2.5.4.30 NAME 'supportedApplicationContext'
EQUALITY objectIdentifierMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 )
# SUP comes later
attribute ( 2.5.4.31 NAME 'member' SUP distinguishedName )
attribute ( 2.5.4.32 NAME 'owner' SUP distinguishedName )
attribute ( 2.5.4.33 NAME 'roleOccupant' SUP distinguishedName )
attribute ( 2.5.4.34 NAME 'seeAlso' SUP distinguishedName )
attribute ( 2.5.4.35 NAME 'userPassword' EQUALITY octetStringMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.40{128} )
# Must be stored and requested in the binary form, as
# userCertificate;binary
attribute ( 2.5.4.36 NAME 'userCertificate'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.8 )
# As above
attribute ( 2.5.4.37 NAME 'cACertificate'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.8 )
# As above
attribute ( 2.5.4.38 NAME 'authorityRevocationList'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.9 )
# As above
attribute ( 2.5.4.39 NAME 'certificateRevocationList'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.9 )
# As above
attribute ( 2.5.4.40 NAME 'crossCertificatePair'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.10 )
# Out of order!!!
attribute ( 2.5.4.41 NAME 'name' EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768} )
attribute ( 2.5.4.42 NAME 'givenName' SUP name )
attribute ( 2.5.4.43 NAME 'initials' SUP name )
attribute ( 2.5.4.45 NAME 'x500UniqueIdentifier' EQUALITY bitStringMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.6 )
attribute ( 2.5.4.46 NAME 'dnQualifier' EQUALITY caseIgnoreMatch
ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.44 )
attribute ( 2.5.4.47 NAME 'enhancedSearchGuide'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.21 )
attribute ( 2.5.4.48 NAME 'protocolInformation'
EQUALITY protocolInformationMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.42 )
# Out of order!!!
# We had a dn definition in slapd.at.conf and Netscape lists both
# names for that OID
attribute ( 2.5.4.49 NAME ( 'distinguishedName' 'dn' ) EQUALITY distinguishedNameMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
attribute ( 2.5.4.50 NAME 'uniqueMember' EQUALITY uniqueMemberMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.34 )
attribute ( 2.5.4.51 NAME 'houseIdentifier' EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768} )
# This attribute is to be stored and requested in the binary form, as
# 'supportedAlgorithms;binary'.
attribute ( 2.5.4.52 NAME 'supportedAlgorithms'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.49 )
# This attribute is to be stored and requested in the binary form, as
# 'deltaRevocationList;binary'.
attribute ( 2.5.4.53 NAME 'deltaRevocationList'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.9 )
attribute ( 2.5.4.54 NAME 'dmdName' SUP name )
# Standard object classes from RFC2256
objectclass ( 2.5.6.0 NAME 'top' ABSTRACT MUST objectClass )
objectclass ( 2.5.6.1 NAME 'alias' SUP top STRUCTURAL MUST aliasedObjectName )
objectclass ( 2.5.6.2 NAME 'country' SUP top STRUCTURAL MUST c
MAY ( searchGuide $ description ) )
objectclass ( 2.5.6.3 NAME 'locality' SUP top STRUCTURAL
MAY ( street $ seeAlso $ searchGuide $ st $ l $ description ) )
objectclass ( 2.5.6.4 NAME 'organization' SUP top STRUCTURAL MUST o
MAY ( userPassword $ searchGuide $ seeAlso $ businessCategory $
x121Address $ registeredAddress $ destinationIndicator $
preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
telephoneNumber $ internationaliSDNNumber $
facsimileTelephoneNumber $
street $ postOfficeBox $ postalCode $ postalAddress $
physicalDeliveryOfficeName $ st $ l $ description ) )
objectclass ( 2.5.6.5 NAME 'organizationalUnit' SUP top STRUCTURAL MUST ou
MAY ( userPassword $ searchGuide $ seeAlso $ businessCategory $
x121Address $ registeredAddress $ destinationIndicator $
preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
telephoneNumber $ internationaliSDNNumber $
facsimileTelephoneNumber $
street $ postOfficeBox $ postalCode $ postalAddress $
physicalDeliveryOfficeName $ st $ l $ description ) )
objectclass ( 2.5.6.6 NAME 'person' SUP top STRUCTURAL MUST ( sn $ cn )
MAY ( userPassword $ telephoneNumber $ seeAlso $ description ) )
objectclass ( 2.5.6.7 NAME 'organizationalPerson' SUP person STRUCTURAL
MAY ( title $ x121Address $ registeredAddress $
destinationIndicator $
preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
telephoneNumber $ internationaliSDNNumber $
facsimileTelephoneNumber $
street $ postOfficeBox $ postalCode $ postalAddress $
physicalDeliveryOfficeName $ ou $ st $ l ) )
# Notice that preferredDeliveryMethod is duplicate
objectclass ( 2.5.6.8 NAME 'organizationalRole' SUP top STRUCTURAL MUST cn
MAY ( x121Address $ registeredAddress $ destinationIndicator $
preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
telephoneNumber $ internationaliSDNNumber $
facsimileTelephoneNumber $
seeAlso $ roleOccupant $ preferredDeliveryMethod $ street $
postOfficeBox $ postalCode $ postalAddress $
physicalDeliveryOfficeName $ ou $ st $ l $ description ) )
objectclass ( 2.5.6.9 NAME 'groupOfNames' SUP top STRUCTURAL MUST ( member $ cn )
MAY ( businessCategory $ seeAlso $ owner $ ou $ o $ description ) )
# Notice that preferredDeliveryMethod is duplicate
# It seems they could not agree on wheter telephoneNumber is MAY
# in person. Probably it wasn't originally at was added as an
# afterthought
objectclass ( 2.5.6.10 NAME 'residentialPerson' SUP person STRUCTURAL MUST l
MAY ( businessCategory $ x121Address $ registeredAddress $
destinationIndicator $ preferredDeliveryMethod $ telexNumber $
teletexTerminalIdentifier $ telephoneNumber $
internationaliSDNNumber $
facsimileTelephoneNumber $ preferredDeliveryMethod $ street $
postOfficeBox $ postalCode $ postalAddress $
physicalDeliveryOfficeName $ st $ l ) )
objectclass ( 2.5.6.11 NAME 'applicationProcess' SUP top STRUCTURAL MUST cn
MAY ( seeAlso $ ou $ l $ description ) )
objectclass ( 2.5.6.12 NAME 'applicationEntity' SUP top STRUCTURAL
MUST ( presentationAddress $ cn )
MAY ( supportedApplicationContext $ seeAlso $ ou $ o $ l $
description ) )
# This one was wrong in our schema, it only allowed the aditional
# knowledgeInformation attribute, while it is derived from
# applicationEntity and should allow all its attributes as well.
objectclass ( 2.5.6.13 NAME 'dSA' SUP applicationEntity STRUCTURAL
MAY knowledgeInformation )
objectclass ( 2.5.6.14 NAME 'device' SUP top STRUCTURAL MUST cn
MAY ( serialNumber $ seeAlso $ owner $ ou $ o $ l $ description ) )
objectclass ( 2.5.6.15 NAME 'strongAuthenticationUser' SUP top AUXILIARY
MUST userCertificate )
objectclass ( 2.5.6.16 NAME 'certificationAuthority' SUP top AUXILIARY
MUST ( authorityRevocationList $ certificateRevocationList $
cACertificate ) MAY crossCertificatePair )
# New
objectclass ( 2.5.6.17 NAME 'groupOfUniqueNames' SUP top STRUCTURAL
MUST ( uniqueMember $ cn )
MAY ( businessCategory $ seeAlso $ owner $ ou $ o $ description ) )
# New
objectclass ( 2.5.6.18 NAME 'userSecurityInformation' SUP top AUXILIARY
MAY ( supportedAlgorithms ) )
# New
objectclass ( 2.5.6.16.2 NAME 'certificationAuthority-V2' SUP
certificationAuthority
AUXILIARY MAY ( deltaRevocationList ) )
# New
objectclass ( 2.5.6.19 NAME 'cRLDistributionPoint' SUP top STRUCTURAL
MUST ( cn ) MAY ( certificateRevocationList $
authorityRevocationList $
deltaRevocationList ) )
# New
objectclass ( 2.5.6.20 NAME 'dmd' SUP top STRUCTURAL MUST ( dmdName )
MAY ( userPassword $ searchGuide $ seeAlso $ businessCategory $
x121Address $ registeredAddress $ destinationIndicator $
preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
telephoneNumber $ internationaliSDNNumber $
facsimileTelephoneNumber $
street $ postOfficeBox $ postalCode $ postalAddress $
physicalDeliveryOfficeName $ st $ l $ description ) )

View file

@ -0,0 +1,21 @@
# Assorted definitions from several sources
# This file uses definitions from slapd.std.schema and
# slapd.pilot.schema
# This comes from RFC2247
objectclass ( 1.3.6.1.4.1.1466.344 NAME 'dcObject' SUP top AUXILIARY MUST dc )
# This comes from RFC2377
objectclass ( 1.3.6.1.1.3.1 NAME 'uidObject' SUP top AUXILIARY MUST uid )
# Origin of this has not been identified. We had it and Netscape has it
# too.
attribute ( 1.3.6.1.4.1.250.1.60 NAME ( 'timeToLive' 'ttl' )
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
objectclass ( 1.3.6.1.4.1.250.3.18 NAME 'cacheObject' SUP top MAY ttl )

View file

@ -0,0 +1,357 @@
# These come from RFC1274 and are in ASN.1 syntax. They have been
# translated with some imagination. Only attributes and classes we
# already had are here. In general, the matching rules in the
# attribute types are incomplete or incorrect and have to be checked.
# Note: It seems that the pilot schema evolved beyond what was
# described in RFC1274. It also seems that Umich followed the changes
# but we don't know where are documented. More worrisome is that it
# seems that Netscape does not know either. Searches on Altavista
# have not shed any light, so we will have to ask for help.
# This file uses definitions from slapd.std.schema
# ccitt.data.pss.ucl.pilot ( 0.9.2342.19200300.100 )
# 1 pilotAttributeType
# 3 pilotAttributeSyntax
# 4 pilotObjectClass
# 10 pilotGroups
# Believe it or not, this is case-insensitive
attribute ( 0.9.2342.19200300.100.1.1 NAME ( 'uid' 'userid' )
EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( 0.9.2342.19200300.100.1.2 NAME 'textEncodedORAddress'
EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( 0.9.2342.19200300.100.1.3 NAME ( 'mail' 'rfc822Mailbox' )
EQUALITY caseIgnoreIA5Match
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( 0.9.2342.19200300.100.1.4 NAME 'info' EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( 0.9.2342.19200300.100.1.5 NAME ( 'drink' 'favouriteDrink' )
EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( 0.9.2342.19200300.100.1.6 NAME 'roomNumber'
EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( 0.9.2342.19200300.100.1.7 NAME 'photo'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.5' )
attribute ( 0.9.2342.19200300.100.1.8 NAME 'userClass'
EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( 0.9.2342.19200300.100.1.9 NAME 'host'
EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( 0.9.2342.19200300.100.1.10 NAME 'manager'
EQUALITY distinguishedNameMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.12' )
attribute ( 0.9.2342.19200300.100.1.11 NAME 'documentIdentifier'
EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( 0.9.2342.19200300.100.1.12 NAME 'documentTitle'
EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attributes ( 0.9.2342.19200300.100.1.13 NAME 'documentVersion'
EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attributes ( 0.9.2342.19200300.100.1.14 NAME 'documentAuthor'
EQUALITY distinguishedNameMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.12' )
attributes ( 0.9.2342.19200300.100.1.15 NAME 'documentLocation'
EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( 0.9.2342.19200300.100.1.20 NAME ( 'homeTelephoneNumber' 'homePhone' )
EQUALITY telephoneNumberMatch
SUBSTR telephoneNumberSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.50 )
attribute ( 0.9.2342.19200300.100.1.21 NAME 'secretary'
EQUALITY distinguishedNameMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.12' )
# Netscape defines this with syntax 1.15 TBC
attribute ( 0.9.2342.19200300.100.1.22 NAME 'otherMailbox'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.39' )
# Netscape defines this with syntax 1.15 TBC
attribute ( 0.9.2342.19200300.100.1.23 NAME 'lastModifiedTime'
EQUALITY ??
SYNTAX 1.3.6.1.4.1.1466.115.121.1.53 )
attribute ( 0.9.2342.19200300.100.1.24 NAME 'lastModifiedBy'
EQUALITY distinguishedNameMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.12' )
# This is the definition as defined in RFC2247
attribute ( 0.9.2342.19200300.100.1.25 NAME 'dc'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
# This is aRecord in RFC1274. However, objectclass dNSDomain as we
# and Netscape use it is very different.
attribute ( 0.9.2342.19200300.100.1.26 NAME 'dNSRecord'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
# 0.9.2342.19200300.100.1.27 was probably intended to be mDRecord in
# RFC1274, but they got it wrong and did not define it, thought it
# is referenced by dNSDomain in it.
# 0.9.2342.19200300.100.1.28 was mXRecord in RFC1274
# 0.9.2342.19200300.100.1.29 was nSRecord in RFC1274
# 0.9.2342.19200300.100.1.30 was sOARecord in RFC1274
# 0.9.2342.19200300.100.1.31 was cNAMERecord in RFC1274
attribute ( 0.9.2342.19200300.100.1.37 NAME 'associatedDomain'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( 0.9.2342.19200300.100.1.38 NAME 'associatedName' DESC
EQUALITY distinguishedNameMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.12' )
# Netscape gives syntax 1.15 to this. TBC
attribute ( 0.9.2342.19200300.100.1.39 NAME 'homePostalAddress'
EQUALITY ??
SYNTAX '1.3.6.1.4.1.1466.115.121.1.41' )
attribute ( 0.9.2342.19200300.100.1.40 NAME 'personalTitle'
EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( 0.9.2342.19200300.100.1.41 NAME ( 'mobileTelephoneNumber' 'mobile' )
EQUALITY telephoneNumberMatch
SUBSTR telephoneNumberSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.50 )
attribute ( 0.9.2342.19200300.100.1.42 NAME ( 'pagerTelephoneNumber' 'pager' )
EQUALITY telephoneNumberMatch
SUBSTR telephoneNumberSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.50 )
attribute ( 0.9.2342.19200300.100.1.43 NAME ( 'co' 'friendlyCountryName' )
EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( 0.9.2342.19200300.100.1.44 NAME 'uniqueIdentifier'
EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( 0.9.2342.19200300.100.1.45 NAME 'organizationalStatus'
EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( 0.9.2342.19200300.100.1.46 NAME 'janetMailbox'
EQUALITY caseIgnoreIA5Match
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
# Netscape gives syntax 1.27 (integer). However, 1.32 is only listed
# in RFC2252 without explanation. The SINGLE-VALUE thing comes from
# Netscape and is not backed by RFC1274.
attribute ( 0.9.2342.19200300.100.1.47 NAME 'mailPreferenceOption'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.32' SINGLE-VALUE )
# 0.9.2342.19200300.100.1.48 was buildingName in RFC1274
# 0.9.2342.19200300.100.1.49 was dSAQuality in RFC1274
# 0.9.2342.19200300.100.1.50 was singleLevelQuality in RFC1274
# 0.9.2342.19200300.100.1.51 was subtreeMinimumQuality in RFC1274
# 0.9.2342.19200300.100.1.52 was subtreeMaximumQuality in RFC1274
# Netscape assigns binary syntax to this. RFC1274 is more detailed
# about this but RFC2252 does not seem to list a specific syntax.
# We had this as 'bin'
attribute ( 0.9.2342.19200300.100.1.53 NAME 'personalSignature'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.5' )
attribute ( 0.9.2342.19200300.100.1.54 NAME 'dITRedirect'
EQUALITY distinguishedNameMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.12' )
# Netscape gives syntax 1.5 to this. We had it as 'bin'.
attribute ( 0.9.2342.19200300.100.1.55 NAME 'audio'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.4' )
attribute ( 0.9.2342.19200300.100.1.56 NAME 'documentPublisher'
EQUALITY caseIgnoreMatch
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
# This one is ripped from Netscape and is a pilot object. It is not
# in RFC1274, but we had it as 'bin'.
attribute ( 0.9.2342.19200300.100.1.60 NAME 'jpegPhoto'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.5' )
# These attributes are pilot-related attributes that we had and Netscape
# has too, however, the OID is unknown for them and Netscape uses a
# string in place of the missing OID. We will do the same until we
# can make head or tails of this.
attribute ( abstract-oid NAME 'abstract'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( authorcn-oid NAME ( 'documentAuthorCommonName' 'authorCn' )
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( authorsn-oid NAME ( 'documentAuthorSurname' 'authorSn' )
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( documentStore-oid NAME 'documentStore'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( keyWords-oid NAME 'keyWords'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attribute ( obsoletedByDocument-oid NAME 'obsoletedByDocument'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.12' )
attributes ( obsoletesDocument-oid NAME 'obsoletesDocument'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.12' )
attributes ( subject-oid NAME 'subject'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attributes ( updatedByDocument-oid NAME 'updatedByDocument'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.12' )
attributes ( updatesDocument-oid NAME 'updatesDocument'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.12' )
# In classes, STRUCTURAL or AUXILIARY is chosen depending on the
# textual description that accompanies the class in RFC1274
# This is pilotObject from the RFC. However, we had both photo
# and jpegPhoto attributes. Nestcape does too.
objectclass ( 0.9.2342.19200300.100.4.3 NAME 'pilotObject' SUP top
AUXILIARY MAY ( info $ photo $ manager $ uniqueIdentifier $
lastModifiedTime $ lastModifiedBy $ dITRedirect $ audio $
jpegPhoto ) )
# This is probably wrong. RFC1274 defines a pilotPerson. We did not
# have it and we did have a newPilotPerson instead. However, the
# definition is the same. Maybe it changed and was not reflected
# in the RFC.
objectclass ( 0.9.2342.19200300.100.4.4 NAME 'newPilotPerson' SUP person
STRUCTURAL MAY ( uid $ textEncodedORAddress $ mail $ drink $
roomNumber $ userClass $ homePhone $ homePostalAddress $
secretary $ personalTitle $ preferredDeliveryMethod $
businessCategory $ janetMailbox $ otherMailbox $ mobile $
pager $ organizationalStatus $ mailPreferenceOption $
personalSignature ) )
# The text is unclear about whether it is STRUCTURAL or AUXILIARY
# I think it was meant to be STRUCTURAL, it is the least restrictive
# of the options and RFC2377 explains uidObject as an auxiliary.
objectclass ( 0.9.2342.19200300.100.4.5 NAME 'account' SUP top
STRUCTURAL MUST uid MAY ( description $ seeAlso $ l $ o $ ou $
host ) )
# Netscape says this is derived from pilotObject, but RFC1274 says top.
# Which is it? Our attribute list matches that of Netscape, so we will
# go with Netscape for the time being.
# Besides, this objectclass is a mess. I can only presume that
# originally documentAuthor, but later someone noticed that not all
# authors had DN's, so authorCN and authorSN were added. Other
# attributes were added as well. However, either no one remembered to
# assign OIDs to these attribute types or their assignments have been
# lost. See their definitions above for the Netscape kludge that we
# have adopted. FIX NEEDED.
objectclass ( 0.9.2342.19200300.100.4.6 NAME 'document' SUP pilotObject
MUST documentIdentifier MAY ( cn $ description $ seeAlso $ l $
o $ ou $ documentTitle $ documentVersion $ documentAuthor $
documentLocation $ documentPublisher $
abstract $ authorCN $ authorSN $ documentStore $ keywords $
obsoletedByDocument $ obsoletesDocument $ subject $
updatedByDocument $ updatesDocument ) )
objectclass ( 0.9.2342.19200300.100.4.7 NAME 'room' SUP top STRUCTURAL
MUST cn MAY ( roomNumber $ description $ seeAlso $ telephoneNumber ) )
objectclass ( 0.9.2342.19200300.100.4.9 NAME 'documentSeries' SUP top
STRUCTURAL MUST cn MAY ( description $ seeAlso $ telephonenumber $
l $ o $ ou ) )
# This definition is much longer than that in RFC1274 and is taken from RFC2247
objectclass ( 0.9.2342.19200300.100.4.13 NAME 'domain' SUP top STRUCTURAL
MUST dc
MAY ( userPassword $ searchGuide $ seeAlso $ businessCategory $
x121Address $ registeredAddress $ destinationIndicator $
preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
telephoneNumber $ internationaliSDNNumber $ facsimileTelephoneNumber $
street $ postOfficeBox $ postalCode $ postalAddress $
physicalDeliveryOfficeName $ st $ l $ description $ o $
associatedName ) )
# This class has in RFC1274 two attributes postalAttributeSet and
# telecomunicationAttributeSet that we did not have. We let them out
# for now. Netscape does not have them either.
objectclass ( 0.9.2342.19200300.100.4.14 NAME 'RFC822localPart' SUP domain
MAY ( cn $ sn $ description $ seeAlso $ telephonenumber ) )
# Another wonderful inconsistency. This objectclass has little
# relationship to the way it was defined in RFC1274, that was derived
# from domain, adding ARecord, MDRecord, MXRecord, NSRecord, SOARecord
# and CNAMERecord attribute types of syntax DNSRecordSyntax. On the
# other hand, we had dNSRecord and Netscape has it too. The OID for
# dNSRecord is the one used in RFC1274 for ARecord. Netscape also has
# a manager attribute type here that we did not. It seems a mistake
# and we do not include it.
objectclass ( 0.9.2342.19200300.100.4.15 NAME 'dNSDomain' SUP 'domain'
MAY dnsrecord )
objectclass ( 0.9.2342.19200300.100.4.17 NAME 'domainRelatedObject'
SUP 'top' MUST associatedDomain )
# Well, first notice we (and Netscape) were using co as short for
# friendlyCountryName
objectclass ( 0.9.2342.19200300.100.4.18 NAME 'friendlyCountry' SUP country
MUST co )
objectclass ( 0.9.2342.19200300.100.4.19 NAME 'simpleSecurityObject'
SUP top MUST userPassword )
# Nice test case of class with two superiors. Netscape does not give
# OID for this objectclass and gives top as its superior. We use the
# OID given in RFC1274
objectclass ( 0.9.2342.19200300.100.4.20 NAME 'pilotOrganization'
SUP ( organization $ organizationalUnit ) MAY buildingName )