From cadecfaae15530566a2220b11dc9a5a7016b7c06 Mon Sep 17 00:00:00 2001 From: Kurt Zeilenga Date: Thu, 10 Jan 2002 04:10:54 +0000 Subject: [PATCH] Finish building in operational attributes --- servers/slapd/schema/collective.schema | 26 ++++----- servers/slapd/schema/core.schema | 79 +------------------------- servers/slapd/schema/vendor.schema | 49 ---------------- servers/slapd/schema_prep.c | 7 ++- servers/slapd/schemaparse.c | 2 - servers/slapd/slap.h | 2 +- 6 files changed, 16 insertions(+), 149 deletions(-) delete mode 100644 servers/slapd/schema/vendor.schema diff --git a/servers/slapd/schema/collective.schema b/servers/slapd/schema/collective.schema index 4a5c412f0e..f3ece52cdf 100644 --- a/servers/slapd/schema/collective.schema +++ b/servers/slapd/schema/collective.schema @@ -37,34 +37,28 @@ objectClass ( 2.5.20.2 NAME 'collectiveAttributes' AUXILIARY ) # The collectiveAttributeSubentry operational attribute identifies all # collective attribute subentries that affect the entry. # -objectClass ( 2.5.18.12 NAME 'collectiveAttributeSubentry' - EQUALITY distinguishedNameMatch - SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 - USAGE directoryOperation NO-USER-MODIFICATION ) - +#objectClass ( 2.5.18.12 NAME 'collectiveAttributeSubentry' +# EQUALITY distinguishedNameMatch +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 +# USAGE directoryOperation NO-USER-MODIFICATION ) +# #2.3. collectiveExclusions # # The collectiveExclusions operational attribute allows particular # collective attributes to be excluded from an entry. It MAY appear in # any entry and MAY have multiple values. # -objectClass ( 2.5.18.7 NAME 'collectiveExclusions' - EQUALITY objectIdentifierMatch - SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 - USAGE directoryOperation ) - +#objectClass ( 2.5.18.7 NAME 'collectiveExclusions' +# EQUALITY objectIdentifierMatch +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 +# USAGE directoryOperation ) +# # The name excludedAllCollectiveAttributes is associated with the OID # 2.5.18.0. When this name or OID is present as a value of the # collectiveExclusions attribute, all collective attributes are excluded # from an entry. # # -# -#Zeilenga draft-zeilenga-ldap-collective-04 [Page 3] -# -#INTERNET-DRAFT LDAP Collective Attributes 20 December 2001 -# -# #3. Collective Attribute Types # # A userApplications attribute type can be defined to be COLLECTIVE diff --git a/servers/slapd/schema/core.schema b/servers/slapd/schema/core.schema index 44a1a465f4..2f60574889 100644 --- a/servers/slapd/schema/core.schema +++ b/servers/slapd/schema/core.schema @@ -21,47 +21,6 @@ # named referrals # alias draft -# -# Standard X.501(93) Operational Attribute Types from RFC 2252 -# - -attributetype ( 2.5.21.1 NAME 'dITStructureRules' - DESC 'RFC2252: DIT structure rules' - EQUALITY integerFirstComponentMatch - SYNTAX 1.3.6.1.4.1.1466.115.121.1.17 USAGE directoryOperation ) - -attributetype ( 2.5.21.2 NAME 'dITContentRules' - DESC 'RFC2252: DIT content rules' - EQUALITY objectIdentifierFirstComponentMatch - SYNTAX 1.3.6.1.4.1.1466.115.121.1.16 USAGE directoryOperation ) - -attributetype ( 2.5.21.7 NAME 'nameForms' - DESC 'RFC2252: name forms ' - EQUALITY objectIdentifierFirstComponentMatch - SYNTAX 1.3.6.1.4.1.1466.115.121.1.35 USAGE directoryOperation ) - -attributetype ( 2.5.21.8 NAME 'matchingRuleUse' - DESC 'RFC2252: matching rule uses' - EQUALITY objectIdentifierFirstComponentMatch - SYNTAX 1.3.6.1.4.1.1466.115.121.1.31 USAGE directoryOperation ) - -# -# LDAP Operational Attributes from RFC 2252 -# - -attributetype ( 1.3.6.1.4.1.1466.101.120.6 NAME 'altServer' - DESC 'RFC2252: alternative servers' - SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 USAGE dSAOperation ) - -# -# Standard attribute types used for subtyping from RFC 2256 -# - -attributetype ( 2.5.4.49 NAME 'distinguishedName' - DESC 'RFC2256: common supertype of distingushed name attributes' - EQUALITY distinguishedNameMatch - SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) - # # Standard attribute types from RFC 2256 # @@ -554,16 +513,6 @@ objectclass ( 1.3.6.1.4.1.1466.101.119.2 NAME 'dynamicObject' DESC 'RFC2589: Dynamic Object' SUP top AUXILIARY ) -attributetype ( 1.3.6.1.4.1.1466.101.119.3 NAME 'entryTtl' - DESC 'RFC2589: entry time-to-live' - SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE - NO-USER-MODIFICATION USAGE dSAOperation ) - -attributetype ( 1.3.6.1.4.1.1466.101.119.4 NAME 'dynamicSubtrees' - DESC 'RFC2589: dynamic subtrees' - SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 NO-USER-MODIFICATION - USAGE dSAOperation ) - # # Derived from RFC 1274, but with new "short names" # @@ -608,12 +557,6 @@ objectclass ( 1.3.6.1.1.3.1 NAME 'uidObject' # # From draft-zeilenga-ldap-namedref-00.txt # used to represent referrals in the directory -# -#attributetype ( 2.16.840.1.113730.3.1.34 NAME 'ref' -# DESC 'namedref: subordinate referral URL' -# EQUALITY caseExactMatch -# SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 -# USAGE distributedOperation ) objectclass ( 2.16.840.1.113730.3.2.6 NAME 'referral' DESC 'namedref: named subordinate referral' @@ -622,16 +565,6 @@ objectclass ( 2.16.840.1.113730.3.2.6 NAME 'referral' # # LDAP/X.500 subentry schema # draft-zeilenga-ldap-subentry-xx.txt -# -attributetype ( 2.5.18.5 NAME 'administrativeRole' - EQUALITY objectIdentifierMatch - USAGE directoryOperation - SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 ) - -attributetype ( 2.5.18.6 NAME 'subtreeSpecification' - SINGLE-VALUE - USAGE directoryOperation - SYNTAX 1.3.6.1.4.1.1466.115.121.1.45 ) objectclass ( 2.5.20.0 NAME 'subentry' SUP top STRUCTURAL @@ -644,6 +577,7 @@ objectclass ( 2.5.20.0 NAME 'subentry' objectclass ( 2.16.840.1.113719.2.142.6.1.1 NAME 'LDAPsubEntry' DESC 'LDAP Subentry' + OBSOLETE SUP top STRUCTURAL MAY cn ) # @@ -673,14 +607,3 @@ attributetype ( 1.3.6.1.4.1.250.1.32 EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) - -# -# OpenLDAP specific schema items -# Access Control Information -# -#attributetype ( 1.3.6.1.4.1.4203.666.1.5 -# NAME 'OpenLDAPaci' -# DESC 'OpenLDAP access control information (experimental)' -# EQUALITY OpenLDAPaciMatch -# SYNTAX 1.3.6.1.4.1.4203.666.2.1 -# USAGE directoryOperation ) diff --git a/servers/slapd/schema/vendor.schema b/servers/slapd/schema/vendor.schema deleted file mode 100644 index 54207cb52a..0000000000 --- a/servers/slapd/schema/vendor.schema +++ /dev/null @@ -1,49 +0,0 @@ -# -# RFC 3045: Storing Vendor Information in the LDAP root DSE -# - -# 2.1 vendorName -# -# This attribute contains a single string, which represents the name of -# the LDAP server implementer. -# -# All LDAP server implementations SHOULD maintain a vendorName, which -# is generally the name of the company that wrote the LDAP Server code -# like "Novell, Inc." - -attributetype ( 1.3.6.1.1.4 NAME 'vendorName' - DESC 'RFC3045: name of implementation vendor' - EQUALITY 1.3.6.1.4.1.1466.109.114.1 - SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 - SINGLE-VALUE NO-USER-MODIFICATION - USAGE dSAOperation ) - -# 2.2 vendorVersion -# -# This attribute contains a string which represents the version of the -# LDAP server implementation. -# -# All LDAP server implementations SHOULD maintain a vendorVersion. -# Note that this value is typically a release value--comprised of a -# string and/or a string of numbers--used by the developer of the LDAP -# server product (as opposed to the supportedLDAPVersion, which -# specifies the version of the LDAP protocol supported by this server). -# This is single-valued so that it will only have one version value. -# This string MUST be unique between two versions, but there are no -# other syntactic restrictions on the value or the way it is formatted. - -attributetype ( 1.3.6.1.1.5 NAME 'vendorVersion' - DESC 'RFC3045: version of implementation' - EQUALITY 1.3.6.1.4.1.1466.109.114.1 - SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 - SINGLE-VALUE NO-USER-MODIFICATION - USAGE dSAOperation ) - -# The intent behind the equality match on vendorVersion is to not allow -# a less than or greater than type of query. Say release "LDAPv3 8.0" -# has a problem that is fixed in the next release "LDAPv3 8.5", but in -# the mean time there is also an update release say version "LDAPv3 -# 8.01" that fixes the problem. This will hopefully stop the client -# from saying it will not work with a version less than "LDAPv3 8.5" -# when it would also work with "LDAPv3 8.01". With the equality match -# the client would have to exactly match what it is looking for. diff --git a/servers/slapd/schema_prep.c b/servers/slapd/schema_prep.c index e107acbaff..d85b980938 100644 --- a/servers/slapd/schema_prep.c +++ b/servers/slapd/schema_prep.c @@ -208,7 +208,8 @@ static struct slap_schema_ad_map { "SINGLE-VALUE USAGE directoryOperation )", NULL, NULL, NULL, NULL, offsetof(struct slap_internal_schema, si_ad_subschemaSubentry) }, - { "collectiveSubentry", "( 2.5.18.12 NAME 'collectiveAttributeSubentry' " + { "collectiveAttributeSubentry", "( 2.5.18.12 " + "NAME 'collectiveAttributeSubentry' " "EQUALITY distinguishedNameMatch " "SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 " "USAGE directoryOperation NO-USER-MODIFICATION )", @@ -349,12 +350,12 @@ static struct slap_schema_ad_map { "SYNTAX 1.3.6.1.4.1.1466.115.121.1.35 USAGE directoryOperation )", NULL, NULL, NULL, NULL, offsetof(struct slap_internal_schema, si_ad_nameForms) }, - { "matchingRuleUses", "( 2.5.21.8 NAME 'matchingRuleUse' " + { "matchingRuleUse", "( 2.5.21.8 NAME 'matchingRuleUse' " "DESC 'RFC2252: matching rule uses' " "EQUALITY objectIdentifierFirstComponentMatch " "SYNTAX 1.3.6.1.4.1.1466.115.121.1.31 USAGE directoryOperation )", NULL, NULL, NULL, NULL, - offsetof(struct slap_internal_schema, si_ad_matchingRuleUses) }, + offsetof(struct slap_internal_schema, si_ad_matchingRuleUse) }, { "ldapSyntaxes", "( 1.3.6.1.4.1.1466.101.120.16 NAME 'ldapSyntaxes' " "DESC 'RFC2252: LDAP syntaxes' " diff --git a/servers/slapd/schemaparse.c b/servers/slapd/schemaparse.c index 2fdbe34891..991c6504c9 100644 --- a/servers/slapd/schemaparse.c +++ b/servers/slapd/schemaparse.c @@ -218,14 +218,12 @@ parse_at( return 1; } -#if 0 /* operational attributes should be defined internally */ if ( at->at_usage ) { fprintf( stderr, "%s: line %d: attribute type \"%s\" is operational\n", fname, lineno, at->at_oid ); return 1; } -#endif code = at_add(at,&err); if ( code ) { diff --git a/servers/slapd/slap.h b/servers/slapd/slap.h index 9427f196dd..d9a4eb5d74 100644 --- a/servers/slapd/slap.h +++ b/servers/slapd/slap.h @@ -555,7 +555,7 @@ struct slap_internal_schema { AttributeDescription *si_ad_attributeTypes; AttributeDescription *si_ad_ldapSyntaxes; AttributeDescription *si_ad_matchingRules; - AttributeDescription *si_ad_matchingRuleUses; + AttributeDescription *si_ad_matchingRuleUse; /* Aliases & Referrals */ AttributeDescription *si_ad_aliasedObjectName; -- 2.39.5