<?xml version="1.0" encoding="UTF-8"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one
  or more contributor license agreements.  See the NOTICE file
  distributed with this work for additional information
  regarding copyright ownership.  The ASF licenses this file
  to you under the Apache License, Version 2.0 (the
  "License"); you may not use this file except in compliance
  with the License.  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing,
  software distributed under the License is distributed on an
  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  KIND, either express or implied.  See the License for the
  specific language governing permissions and limitations
  under the License.
-->
<schema name="dhcp">
  <attributetypes>
    <attributetype oid="2.16.840.1.113719.1.203.4.38" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpFailOverEndpointState</alias>
      </aliases>
      <description>Server (Failover Endpoint) state, as defined in DHCP Failover Protocol [FAILOVR]</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.26</syntax>
      <equality>integerMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.8" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpClassData</alias>
      </aliases>
      <description>Encoded text string or list of bytes expressed in hexadecimal, separated by colons. Clients match subclasses based on matching the class data with the results of match or spawn with statements in the class name declarations.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.26</syntax>
      <equality>caseIgnoreIA5Match</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.35" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpHashBucketAssignment</alias>
      </aliases>
      <description>HashBucketAssignment bit map for the DHCP Server, as defined in DHC Load Balancing Algorithm [RFC 3074].</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.40</syntax>
      <equality>caseIgnoreIA5Match</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.22" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpAddressState</alias>
      </aliases>
      <description>This stores information about the current binding-status of an address. For dynamic addresses managed by DHCP, the values should be restricted to the following: "FREE", "ACTIVE", "EXPIRED", "RELEASED", "RESET", "ABANDONED", "BACKUP". For other addresses, it SHOULD be one of the following: "UNKNOWN", "RESERVED" (an address that is managed by DHCP that is reserved for a specific client), "RESERVED-ACTIVE" (same as reserved, but address is currently in use), "ASSIGNED" (assigned manually or by some other mechanism), "UNASSIGNED", "NOTASSIGNABLE".</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.26</syntax>
      <equality>caseIgnoreIA5Match</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.3" obsolete="false" singlevalue="false" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpStatements</alias>
      </aliases>
      <description>Flexible storage for specific data depending on what object this exists in. Like conditional statements, server parameters, etc. This allows the standard to evolve without needing to adjust the schema.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.26</syntax>
      <equality>caseIgnoreIA5Match</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.36" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpDelayedServiceParameter</alias>
      </aliases>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.27</syntax>
      <equality>integerMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.10" obsolete="false" singlevalue="false" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpHostDN</alias>
      </aliases>
      <description>the distinguished name(s) of the dhcpHost objects.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.12</syntax>
      <equality>distinguishedNameMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.18" obsolete="false" singlevalue="false" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpSharedNetworkDN</alias>
      </aliases>
      <description>The distinguished name(s) of sharedNetworks.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.12</syntax>
      <equality>distinguishedNameMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.4" obsolete="false" singlevalue="false" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpRange</alias>
      </aliases>
      <description>The starting &amp; ending IP Addresses in the range (inclusive), separated by a hyphen; if the range only contains one address, then just the address can be specified with no hyphen. Each range is defined as a separate value.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.26</syntax>
      <equality>caseIgnoreIA5Match</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.21" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpImplementation</alias>
      </aliases>
      <description>Description of the DHCP Server implementation e.g. DHCP Servers vendor.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.26</syntax>
      <equality>caseIgnoreIA5Match</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.19" obsolete="false" singlevalue="false" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpServiceDN</alias>
      </aliases>
      <description>The DN of dhcpService object(s)which contain the configuration information. Each dhcpServer object has this attribute identifying the DHCP configuration(s) that the server is associated with.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.12</syntax>
      <equality>distinguishedNameMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.7" obsolete="false" singlevalue="false" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpOption</alias>
      </aliases>
      <description>Encoded option values to be sent to clients. Each value represents a single option and contains (OptionTag, Length, OptionValue) encoded in the format used by DHCP.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.40</syntax>
      <equality>caseIgnoreIA5Match</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.37" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpMaxClientLeadTime</alias>
      </aliases>
      <description>Maximum Client Lead Time configuration in seconds, as defined in DHCP Failover Protocol [FAILOVR]</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.27</syntax>
      <equality>integerMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.13" obsolete="false" singlevalue="false" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpSubnetDN</alias>
      </aliases>
      <description>The distinguished name(s) of the subnets.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.12</syntax>
      <equality>distinguishedNameMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.11" obsolete="false" singlevalue="false" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpPoolDN</alias>
      </aliases>
      <description>The distinguished name(s) of pools.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.12</syntax>
      <equality>distinguishedNameMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.12" obsolete="false" singlevalue="false" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpGroupDN</alias>
      </aliases>
      <description>The distinguished name(s) of the groups.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.12</syntax>
      <equality>distinguishedNameMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.14" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpLeaseDN</alias>
      </aliases>
      <description>The distinguished name of a client address.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.12</syntax>
      <equality>distinguishedNameMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.15" obsolete="false" singlevalue="false" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpLeasesDN</alias>
      </aliases>
      <description>The distinguished name(s) client addresses.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.12</syntax>
      <equality>distinguishedNameMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.28" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpDnsStatus</alias>
      </aliases>
      <description>This indicates the status of updating DNS resource records on behalf of the client by the DHCP server for this address. The value is a 16-bit bitmask.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.27</syntax>
      <equality>integerMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.6" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpNetMask</alias>
      </aliases>
      <description>The subnet mask length for the subnet. The mask can be easily computed from this length.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.27</syntax>
      <equality>integerMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.39" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpErrorLog</alias>
      </aliases>
      <description>Generic error log attribute that allows logging error conditions within a dhcpService or a dhcpSubnet, like no IP addresses available for lease.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.26</syntax>
      <equality>caseIgnoreIA5Match</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.2" obsolete="false" singlevalue="false" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpSecondaryDN</alias>
      </aliases>
      <description>The DN of dhcpServer(s) which provide backup service for the configuration.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.12</syntax>
      <equality>distinguishedNameMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.20" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpVersion</alias>
      </aliases>
      <description>The version attribute of this object.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.26</syntax>
      <equality>caseIgnoreIA5Match</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.16" obsolete="false" singlevalue="false" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpClassesDN</alias>
      </aliases>
      <description>The distinguished name(s) of a class(es) in a subclass.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.12</syntax>
      <equality>distinguishedNameMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.17" obsolete="false" singlevalue="false" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpSubclassesDN</alias>
      </aliases>
      <description>The distinguished name(s) of subclass(es).</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.12</syntax>
      <equality>distinguishedNameMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.30" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpAssignedHostName</alias>
      </aliases>
      <description>This is the actual hostname that was assigned to a client. It may not be the name that was requested by the client. The fully qualified domain name can be determined by appending the value of "dhcpDomainName" (with a dot separator) to this name.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.26</syntax>
      <equality>caseIgnoreIA5Match</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.26" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpBootpFlag</alias>
      </aliases>
      <description>This indicates whether the address was assigned via BOOTP.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.7</syntax>
      <equality>integerMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.1" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpPrimaryDN</alias>
      </aliases>
      <description>The DN of the dhcpServer which is the primary server for the configuration.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.12</syntax>
      <equality>distinguishedNameMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.33" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpRelayAgentInfo</alias>
      </aliases>
      <description>If the client request was received via a relay agent, this contains information about the relay agent that was available from the DHCP request. This is a hex-encoded option value.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.40</syntax>
      <equality>caseIgnoreIA5Match</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.34" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpHWAddress</alias>
      </aliases>
      <description>The clients hardware address that requested this IP address.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.40</syntax>
      <equality>caseIgnoreIA5Match</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.24" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpStartTimeOfState</alias>
      </aliases>
      <description>This is the time of the last state change for a leased address.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.24</syntax>
      <equality>integerMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.9" obsolete="false" singlevalue="false" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpOptionsDN</alias>
      </aliases>
      <description>The distinguished name(s) of the dhcpOption objects containing the configuration options provided by the server.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.12</syntax>
      <equality>distinguishedNameMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.25" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpLastTransactionTime</alias>
      </aliases>
      <description>This is the last time a valid DHCP packet was received from the client.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.24</syntax>
      <equality>integerMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.31" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpReservedForClient</alias>
      </aliases>
      <description>The distinguished name of a "dhcpClient" that an address is reserved for. This may not be the same as the "dhcpAssignedToClient" attribute if the address is being reassigned but the current lease has not yet expired.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.12</syntax>
      <equality>distinguishedNameMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.32" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpAssignedToClient</alias>
      </aliases>
      <description>This is the distinguished name of a "dhcpClient" that an address is currently assigned to. This attribute is only present in the class when the address is leased.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.12</syntax>
      <equality>distinguishedNameMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.5" obsolete="false" singlevalue="false" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpPermitList</alias>
      </aliases>
      <description>This attribute contains the permit lists associated with a pool. Each permit list is defined as a separate value.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.26</syntax>
      <equality>caseIgnoreIA5Match</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.27" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpDomainName</alias>
      </aliases>
      <description>This is the name of the domain sent to the client by the server. It is essentially the same as the value for DHCP option 15 sent to the client, and represents only the domain - not the full FQDN. To obtain the full FQDN assigned to the client you must prepend the "dhcpAssignedHostName" to this value with a ".".</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.26</syntax>
      <equality>caseIgnoreIA5Match</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.23" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpExpirationTime</alias>
      </aliases>
      <description>This is the time the current lease for an address expires.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.24</syntax>
      <equality>integerMatch</equality>
    </attributetype>
    <attributetype oid="2.16.840.1.113719.1.203.4.29" obsolete="false" singlevalue="true" collective="false" nousermodification="false">
      <aliases>
        <alias>dhcpRequestedHostName</alias>
      </aliases>
      <description>This is the hostname that was requested by the client.</description>
      <usage>USER_APPLICATIONS</usage>
      <syntax>1.3.6.1.4.1.1466.115.121.1.26</syntax>
      <equality>caseIgnoreIA5Match</equality>
    </attributetype>
  </attributetypes>
  <objectclasses>
    <objectclass oid="2.16.840.1.113719.1.203.6.8" obsolete="false">
      <aliases>
        <alias>dhcpSubClass</alias>
      </aliases>
      <description>Represents information about a collection of related classes.</description>
      <superiors>
        <superior>top</superior>
      </superiors>
      <type>STRUCTURAL</type>
      <mandatory>
        <attributetype>cn</attributetype>
      </mandatory>
      <optional>
        <attributetype>dhcpClassData</attributetype>
        <attributetype>dhcpOptionsDN</attributetype>
        <attributetype>dhcpStatements</attributetype>
      </optional>
    </objectclass>
    <objectclass oid="2.16.840.1.113719.1.203.6.5" obsolete="false">
      <aliases>
        <alias>dhcpGroup</alias>
      </aliases>
      <description>Group object that lists host DNs and parameters. This is a container object.</description>
      <superiors>
        <superior>top</superior>
      </superiors>
      <type>STRUCTURAL</type>
      <mandatory>
        <attributetype>cn</attributetype>
      </mandatory>
      <optional>
        <attributetype>dhcpHostDN</attributetype>
        <attributetype>dhcpOptionsDN</attributetype>
        <attributetype>dhcpStatements</attributetype>
      </optional>
    </objectclass>
    <objectclass oid="2.16.840.1.113719.1.203.6.10" obsolete="false">
      <aliases>
        <alias>dhcpLeases</alias>
      </aliases>
      <description>This class represents an IP Address, which may or may not have been leased.</description>
      <superiors>
        <superior>top</superior>
      </superiors>
      <type>STRUCTURAL</type>
      <mandatory>
        <attributetype>cn</attributetype>
        <attributetype>dhcpAddressState</attributetype>
      </mandatory>
      <optional>
        <attributetype>dhcpExpirationTime</attributetype>
        <attributetype>dhcpStartTimeOfState</attributetype>
        <attributetype>dhcpLastTransactionTime</attributetype>
        <attributetype>dhcpBootpFlag</attributetype>
        <attributetype>dhcpDomainName</attributetype>
        <attributetype>dhcpDnsStatus</attributetype>
        <attributetype>dhcpRequestedHostName</attributetype>
        <attributetype>dhcpAssignedHostName</attributetype>
        <attributetype>dhcpReservedForClient</attributetype>
        <attributetype>dhcpAssignedToClient</attributetype>
        <attributetype>dhcpRelayAgentInfo</attributetype>
        <attributetype>dhcpHWAddress</attributetype>
      </optional>
    </objectclass>
    <objectclass oid="2.16.840.1.113719.1.203.6.2" obsolete="false">
      <aliases>
        <alias>dhcpSharedNetwork</alias>
      </aliases>
      <description>This stores configuration information for a shared network.</description>
      <superiors>
        <superior>top</superior>
      </superiors>
      <type>STRUCTURAL</type>
      <mandatory>
        <attributetype>cn</attributetype>
      </mandatory>
      <optional>
        <attributetype>dhcpSubnetDN</attributetype>
        <attributetype>dhcpPoolDN</attributetype>
        <attributetype>dhcpOptionsDN</attributetype>
        <attributetype>dhcpStatements</attributetype>
      </optional>
    </objectclass>
    <objectclass oid="2.16.840.1.113719.1.203.6.12" obsolete="false">
      <aliases>
        <alias>dhcpServer</alias>
      </aliases>
      <description>DHCP Server Object</description>
      <superiors>
        <superior>top</superior>
      </superiors>
      <type>STRUCTURAL</type>
      <mandatory>
        <attributetype>cn</attributetype>
        <attributetype>dhcpServiceDN</attributetype>
      </mandatory>
      <optional>
        <attributetype>dhcpVersion</attributetype>
        <attributetype>dhcpImplementation</attributetype>
        <attributetype>dhcpHashBucketAssignment</attributetype>
        <attributetype>dhcpDelayedServiceParameter</attributetype>
        <attributetype>dhcpMaxClientLeadTime</attributetype>
        <attributetype>dhcpFailOverEndpointState</attributetype>
        <attributetype>dhcpStatements</attributetype>
      </optional>
    </objectclass>
    <objectclass oid="2.16.840.1.113719.1.203.6.11" obsolete="false">
      <aliases>
        <alias>dhcpLog</alias>
      </aliases>
      <description>This is the object that holds past information about the IP address. The cn is the time/date stamp when the address was assigned or released, the address state at the time, if the address was assigned or released.</description>
      <superiors>
        <superior>top</superior>
      </superiors>
      <type>STRUCTURAL</type>
      <mandatory>
        <attributetype>cn</attributetype>
      </mandatory>
      <optional>
        <attributetype>dhcpAddressState</attributetype>
        <attributetype>dhcpExpirationTime</attributetype>
        <attributetype>dhcpStartTimeOfState</attributetype>
        <attributetype>dhcpLastTransactionTime</attributetype>
        <attributetype>dhcpBootpFlag</attributetype>
        <attributetype>dhcpDomainName</attributetype>
        <attributetype>dhcpDnsStatus</attributetype>
        <attributetype>dhcpRequestedHostName</attributetype>
        <attributetype>dhcpAssignedHostName</attributetype>
        <attributetype>dhcpReservedForClient</attributetype>
        <attributetype>dhcpAssignedToClient</attributetype>
        <attributetype>dhcpRelayAgentInfo</attributetype>
        <attributetype>dhcpHWAddress</attributetype>
        <attributetype>dhcpErrorLog</attributetype>
      </optional>
    </objectclass>
    <objectclass oid="2.16.840.1.113719.1.203.6.1" obsolete="false">
      <aliases>
        <alias>dhcpService</alias>
      </aliases>
      <description>Service object that represents the actual DHCP Service configuration. This is a container object.</description>
      <superiors>
        <superior>top</superior>
      </superiors>
      <type>STRUCTURAL</type>
      <mandatory>
        <attributetype>cn</attributetype>
        <attributetype>dhcpPrimaryDN</attributetype>
      </mandatory>
      <optional>
        <attributetype>dhcpSecondaryDN</attributetype>
        <attributetype>dhcpSharedNetworkDN</attributetype>
        <attributetype>dhcpSubnetDN</attributetype>
        <attributetype>dhcpGroupDN</attributetype>
        <attributetype>dhcpHostDN</attributetype>
        <attributetype>dhcpClassesDN</attributetype>
        <attributetype>dhcpOptionsDN</attributetype>
        <attributetype>dhcpStatements</attributetype>
      </optional>
    </objectclass>
    <objectclass oid="2.16.840.1.113719.1.203.6.7" obsolete="false">
      <aliases>
        <alias>dhcpClass</alias>
      </aliases>
      <description>Represents information about a collection of related clients.</description>
      <superiors>
        <superior>top</superior>
      </superiors>
      <type>STRUCTURAL</type>
      <mandatory>
        <attributetype>cn</attributetype>
      </mandatory>
      <optional>
        <attributetype>dhcpSubclassesDN</attributetype>
        <attributetype>dhcpOptionsDN</attributetype>
        <attributetype>dhcpStatements</attributetype>
      </optional>
    </objectclass>
    <objectclass oid="2.16.840.1.113719.1.203.6.4" obsolete="false">
      <aliases>
        <alias>dhcpPool</alias>
      </aliases>
      <description>This stores configuration information about a pool.</description>
      <superiors>
        <superior>top</superior>
      </superiors>
      <type>STRUCTURAL</type>
      <mandatory>
        <attributetype>cn</attributetype>
        <attributetype>dhcpRange</attributetype>
      </mandatory>
      <optional>
        <attributetype>dhcpClassesDN</attributetype>
        <attributetype>dhcpPermitList</attributetype>
        <attributetype>dhcpLeasesDN</attributetype>
        <attributetype>dhcpOptionsDN</attributetype>
        <attributetype>dhcpStatements</attributetype>
      </optional>
    </objectclass>
    <objectclass oid="2.16.840.1.113719.1.203.6.6" obsolete="false">
      <aliases>
        <alias>dhcpHost</alias>
      </aliases>
      <description>This represents information about a particular client</description>
      <superiors>
        <superior>top</superior>
      </superiors>
      <type>STRUCTURAL</type>
      <mandatory>
        <attributetype>cn</attributetype>
      </mandatory>
      <optional>
        <attributetype>dhcpLeaseDN</attributetype>
        <attributetype>dhcpHWAddress</attributetype>
        <attributetype>dhcpOptionsDN</attributetype>
        <attributetype>dhcpStatements</attributetype>
      </optional>
    </objectclass>
    <objectclass oid="2.16.840.1.113719.1.203.6.9" obsolete="false">
      <aliases>
        <alias>dhcpOptions</alias>
      </aliases>
      <description>Represents information about a collection of options defined.</description>
      <superiors>
        <superior>top</superior>
      </superiors>
      <type>AUXILIARY</type>
      <mandatory>
        <attributetype>cn</attributetype>
      </mandatory>
      <optional>
        <attributetype>dhcpOption</attributetype>
      </optional>
    </objectclass>
    <objectclass oid="2.16.840.1.113719.1.203.6.3" obsolete="false">
      <aliases>
        <alias>dhcpSubnet</alias>
      </aliases>
      <description>This class defines a subnet. This is a container object.</description>
      <superiors>
        <superior>top</superior>
      </superiors>
      <type>STRUCTURAL</type>
      <mandatory>
        <attributetype>cn</attributetype>
        <attributetype>dhcpNetMask</attributetype>
      </mandatory>
      <optional>
        <attributetype>dhcpRange</attributetype>
        <attributetype>dhcpPoolDN</attributetype>
        <attributetype>dhcpGroupDN</attributetype>
        <attributetype>dhcpHostDN</attributetype>
        <attributetype>dhcpClassesDN</attributetype>
        <attributetype>dhcpLeasesDN</attributetype>
        <attributetype>dhcpOptionsDN</attributetype>
        <attributetype>dhcpStatements</attributetype>
      </optional>
    </objectclass>
  </objectclasses>
</schema>
