#
# Copyright (C) 1995-2003 by Cisco Systems Inc.
# This program contains proprietary and confidential information.
# All rights reserved.
#
# The data dictionary for genobj blobs.
#
# Formatting rules and best practices (Mark Stapp 6/5/02)
#  1. Wrap descriptions at 70 characters -- this makes on-line help
#     fit in an 80 column screen for nrcmd.
#
#  2. You do not need to provide a CPP macro name (ATTRHDRNAME): the
#     'gmake datadict' step will derive a name from an attribute name and
#     class name.
#
#  3. Pick good attribute names:
#     a) lower case
#     b) hyphens, not underscores or CamelCase for word separation
#     c) remember that users may have to type it and the gui may have to
#        display it --  longer is not always better.
#
#  4. You don't have to set ATTRVIZ -- only if the attribute visibility
#     is different than the class visibility, which defaults to 5.
#
#  5. Flags that can be set on attributes:
#       AF_IMMUTABLE
#         - can't be changed once it is initialized
#       AF_REQUIRED
#         - must have a value -- can be modified, but not unset
#       AF_INITIALIZE
#         - attr will be assigned a default value if none is specified when
#           object is created.
#       AF_FEATURE/ATTRFEAT
#         - this attribute controls the behavior or interpretation of
#           other attributes.
#       AF_REFERENCE
#         - this attribute is a reference to another object.  Provide the
#           class id and optionally the attribute id in the ATTRVAL:.
#           for an objref, only the classid is needed
#	AF_UNIQUE
#	  - this attribute must have a value that's unique among all
#	    the objects of this class
#	AF_NOTREE
#	  - if this object is written to mcd in old-style mcd tree
#	    form, don't write this attribute
#	AF_PRINT_ALT
#	  - use an alternate ascii string output format for this
#	    attribute. For example, print AT_TIME in 'weeks days
#	    minutes seconds' format, or print AT_BOOL as 'enabled' or
#	    'disabled'.
#
#  6. Provide a default value with ATTRDEFVAL: <value> that accurately
#     describes the behavior of the server.
#
#  7. Use the most specific types possible.  For example if there is
#     a range of seconds, use AT_RANGETIME(5m-60h).  Look in ao_obj.h
#     for a description of the available types.
#
#  8. gmake datadict
#     a) in libsrc/cnrschema to update ao_classdef_auto.h from cnr_datadict
#     b) in libsrc/ccmschema to update ccm_classdef_auto.h from ccm_datadict
#        (in cnr-sdk/src).
#     Always check the diffs for *_classdef_auto.h as a sanity check.
#      - the number of lines changed should be consistent with the changes
#        made to the datadict file.
#      - changes to the parsing or emitting code in ao_class.c may cause
#        global changes, but this is rare.
#
#  9. be especially careful about AF_INITIALIZE. Adding this flag will
#     cause data to be forced into the database when an object is
#     created. The uis can represent the default value that will be
#     used, and that's often exactly what you want. In general, only
#     use INITIALIZE if the server cannot function with the attribute
#     unset - if a default applies, try just including ATTRDEFVAL
#     instead.
#
# 10. If objects of a class have a meaningful 'name' attribute, be
#     sure to set the 'CLASSNAME' at the beginning of the class
#     definition to point to that attr. Consider using
#     AF_REQUIRED and AF_UNIQUE for the attribute.
#
# 11. If an attribute is no longer used, add a DEPRECATED line to it.
#     The DEPRECATED value should be the pcv in which the attr became
#     deprecated. The uis may group DEPRECATED attrs together, or hide
#     them from the user.
#
# This file is the authoritative description of the classes and attributes.
# It should be parsed to generate ao_classdef_auto.h.
#
# The three SCHEMA numbers are:
#  Genobj version number, major schema version, minor schema version
#  The genobj version shouldn't change very often.  It defines assumptions
#  about genobj data layout (header size, header semantics, data semantics).
#
#  The major schema number should be changed any time the hierarchy links
#  between classes are changed.  This will happen often during early
#  development, but more rarely later on
#
#  The minor schema number should be changed any time the data dictionary
#  is changed: attributes added or renamed, non-hierarchical references added
#
# The format of this file is the following sequence of (name, value) pairs:
#  <file> : <schema> <classdef-list> ;
#
#  <classdef-list>: <classdef> <classdef-list> | nil ;
#
#  <classdef> : <class> <croot> <cid> <cname> <cnamedesc> <ckey> <cdesc> <cviz>
#
#  <attrdef-list>: <attrdef> <attrdef-list> | nil ;
#
#  <attrdef> : <attr> <aid> <ahdr> <atype> <adesc> <aviz> <afeat>
#            | <vattr> <vtype> <vviz> <vdep> <vdesc>
#
# <class> : CLASS <value>
#  - the name of the class
# <croot> : CLASSROOT <value> | nil
#
#  - the root name for C/C++ macros AO_CLASSID_<croot>, AO_CLASSNAME_<croot>,
#    defaults to the value of <class>
# <cid>   : CLASSID <value>
#  - the class id
# <cname> : CLASSNAME <value> | nil
#  - the attribute which is the name of objects in this class
# <cnamedesc> : CLASSNAMEDESC <value> | nil
#  - the description of the name semantics
# <ckey> : CLASSKEY <value> | nil
#  - the attribute which is the MCD key for objects in this class.  If this
#    value is 0, or unset, the name attribute will be used as the key for MCD.
# <cdesc> : CLASSDESC <value> | nil
#  - the textual description of the class
# <cflags> : CLASSFLAGS <value> | nil
#  - the flags for this class
# <cviz> : CLASSVIZ <value> | nil
#  - the visibility of this class
#
# <attr>   : ATTR <value>
#  - the name of the attribute
# <aid>    : ATTRID <value>
#  - the attribute id of the attribute
# <ahdr>   : ATTRHDRNAME <value> | nil
#  - the C/C++ macro name for the attribute id -- this starts off as
#    'AO_<croot>_<attr>' but will remain constant even if the <croot> or
#    <attr> values change.
# <atype>  : ATTRTYPE <value>
#  - the type of the attribute
# <adef>   : ATTRDEFVAL <value> | nil
#  - the default value for this attribute
# <aflags> : ATTRFLAGS <value> | nil
#  - the flags for this attribute
# <aval>   : ATTRVAL <value>
#  - the extra value for attribute type information.  This information is
#    fairly unstructured, but it is consistently used for various base
#    types:
#     AT_NLIST(): 32 bit value
#       type-id for basic types
#       1<<16 | class-id for AT_OBJ(Class)
#       2<<16 | class-id for AT_OBJREF(Class)
#     AT_SECRET: 32 bit value that is the attr-id of the AT_CLEARTEXT attr
#     AT_CLEARTEXT: 32 bit value that is the attr-id of the AT_SECRET attr
#     AF_REFERENCE: 32 bit value = attr-id << 16 | class-id 
# <aviz>   : ATTRVIZ <value>
#  - the visibility of this attribute, defaults to 5, lower numbers
#    are harder to see.  Let's use 3 for system expert and 1 for AIC use
# <adesc>  : ATTRDESC <value> | nil
#  - the textual description of the attribute
# <afeat>  : ATTRFEAT <value> | nil
#  - the controling 'feature' attribute or condition for this attribute.
#    For example, MCNSEnabled controls the other MCNS attributes; and
#    the type of a zone controls the existence or absence of some zone features
# <vattr> : VATTR <name>
#  - the start of a section for a virtual attribute -- visible to users, but
#    not implemented in the persistent store.  Also used to distinguish
#    between the user model and the server data model.  If an attribute has
#    both ATTR and VATTR fields, the ATTR and ATTRTYPE describe the server
#    data model and the VATTR and VTYPE fields describe the user data model.
# <vtype> : VTYPE <type>
#  - the type of this virtual attribute
# <vdep>  : VDEP <text> | nil
#  - the textual description of the relationship with real attributes
# <vdesc> : VDESC <value> | nil
#  - the textual description of the virtual attribute
# <vviz>  : VVIZ <value> | nil
#  - the visibility of this virtual attribute
#
# XXX: Although the ATTRFEAT mechanism can be used to implement enumerated
#      unions, it is pretty clumsy.  Once I get around to the yacc based
#      parser, it should become cleaner.
#
# NOTE on attribute visibility:
#   The visibility model is similar to rocks and tides.  The visibility
#   number for an attribute is the height of the rock off the bottom, and
#   the visibility number for the context is the height of the tide.  At low
#   tide, you see lots of rocks, at high tide you don't see as many.
#
#   The default visibility for the CLI is 5.  This means that attributes with
#   a visibility level greater or equal to 5 will be shown.  Attributes with
#   a lower visibility number (0 - 4) will only be visible if the session
#   visibility level is lowered.
#
#   If no ATTRVIZ attribute specifier is provided, the attribute will be
#   given a visibility of 5.
#
#
# NOTE -- At this time, the SCHEMA version number is not being
# actively incremented. You do not have to modify it when you modify
# this datadict.
#

SCHEMA: 1.1.13

# CLASSID RANGE Core classes 1 - 10
#
# These classes will not be used directly or indirectly configure servers.

CLASS: ClassDesc
CLASSID: 1
CLASSVIZ: 3
CLASSDESC:: eod
The aobj_h encoding of an ao_class_h structure, mainly used for
sending to remote clients that want to know the schema for a given
datastore.
eod

ATTR: name
ATTRID: 1
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The name of this SCP class.
eod

ATTR: id
ATTRID: 2
ATTRTYPE: AT_RANGEINT(1-65534)
ATTRDESC:: eod
The 16 bit integer id for this SCP class.  This
is the value that is stored in the SCP object
instance and is used as the key for the class
information in the schema.
eod

ATTR: attrs
ATTRID: 3
ATTRTYPE: AT_NLIST(AT_OBJ(AttrDesc))
# 1 << 16 | 2
ATTRVAL: 65538
ATTRDESC:: eod
The list of defined attributes for this SCP class.
eod

ATTR: desc
ATTRID: 4
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The description of this SCP class.
eod

ATTR: name-attr
ATTRID: 5
ATTRTYPE: AT_BYTE
ATTRDESC:: eod
The attribute that provides the name for objects of this class.
If not set, an attribute named 'name', or attribute with id == 1
is used as the name attribute.
eod

ATTR: key-attr
ATTRID: 6
ATTRTYPE: AT_BYTE
ATTRDESC:: eod
The attribute that provides the database key for objects of this
class.  Only used in the MCD database.  Defaults to the name
attribute (with its default semantics) if not set.
eod

ATTR: root-name
ATTRID: 7
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The root name for C preprocessor macros.  Usually derived from
the class name.
eod

ATTR: visibility
ATTRID: 9
ATTRTYPE: AT_BYTE
ATTRDESC:: eod
The visibilty of the class.  Similar in semantics to attribute
visibility, but not as widely used.
eod

ATTR: schema-version
ATTRID: 10
ATTRTYPE: AT_INT
ATTRDESC:: eod
The schema version for this specific SCP class description.
eod

CLASS: AttrDesc
CLASSID: 2
CLASSVIZ: 3
CLASSDESC:: eod
The aobj_h encoding of an ao_attr_h structure, mainly used for
sending to remote clients that want to know the schema for a given
datastore.
eod

ATTR: name
ATTRID: 1
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The name of this attribute.
eod

ATTR: id
ATTRID: 2
ATTRTYPE: AT_RANGEINT(1-254)
ATTRDESC:: eod
The 8 bit (1-254) id of this attribute.  This is the
value that is stored in the object instance and is
used along with the class id for looking up the attribute
description in a schema.
eod

ATTR: base-type
ATTRID: 3
ATTRTYPE: AT_INT
ATTRDESC:: eod
The 32 bit type id for the basic type of this attribute.
eod

ATTR: flags
ATTRID: 4
ATTRTYPE: AT_FLAGSINT(AF_PRINT_ALT=1,AF_REQUIRED=17,AF_SIGNED=18,AF_TRANSIENT=19,AF_CLASSNAME=20,AF_FEATURE=21,AF_IMMUTABLE=22,AF_NOTREE=23,AF_INITIALIZE=24)
ATTRDESC:: eod
The general set of flags describing this attribute.  These flags 
cover a wide range of behavior, including: textual representation,
persistence, and requirements.
eod

ATTR: desc
ATTRID: 5
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The description of the attribute (such as this one).
eod

ATTR: default-value
ATTRID: 6
ATTRTYPE: AT_BLOB
ATTRDESC:: eod
The default value for this attribute, stored in raw form.
This is the value that should be used when this specific
attribute is unset in an object.  If the attribute has 
the flag AF_INITIALIZE set, this value will (should) be
set in newly created objects.
eod

ATTR: extra-value
ATTRID: 7
ATTRTYPE: AT_BLOB
ATTRVIZ: 3
ATTRDESC:: eod
The 'extra' value for this attribute, stored in raw form.
The exact details of the extra value is still in flux.
eod

ATTR: feature-id
ATTRID: 8
ATTRTYPE: AT_BYTE
ATTRDESC:: eod
If this attribute is part of a feature set, the feature-id 
will indicate the attribute that controls that feature set.
eod

ATTR: visibility
ATTRID: 9
ATTRTYPE: AT_BYTE
ATTRDEFVAL: 5
ATTRDESC:: eod
The visibility of this attribute.  This value is used by
user interfaces to determine which attributes should be
shown.
eod

ATTR: hdr-name
ATTRID: 10
ATTRTYPE: AT_STRING
ATTRVIZ: 1
ATTRDESC:: eod
The C preprocessor name to use for this attribute's id.
eod

ATTR: mcd-path
ATTRID: 11
ATTRTYPE: AT_STRING
ATTRVIZ: 1
ATTRDESC:: eod
The relative path to use when storing this attribute in
an MCD tree.
eod

ATTR: enumerations
ATTRID: 12
#ATTRTYPE: AT_NLIST(ScpEnumTmpl)
ATTRTYPE: AT_NLIST(AT_PACK(BIS))
# AT_PACK = 36
ATTRVAL: 36
ATTRDESC::eod
Could be a list of ScpEnumTmpl objects, but that is not very dense.
Let's try a typed pack with the first byte being a type, and 
encoding definitions for type 1 (BIS):
  B - type: value = 0
  I - integer value: one of the allowed integer values, ignored 
      for ENUMSTR
  S - name: the name of the integer value, may be an empty string
eod


ATTR: parent
ATTRID: 13
#ATTRTYPE: AT_OBJREF(ScpAttr|ScpClass|OptionDesc)
ATTRTYPE: AT_OID
ATTRVIZ: 3
ATTRDESC:: eod
The parent could be:
  1. another attribute if this is a sub-option description.
  2. an ScpClass object if this is a schema attribute description
eod

ATTR: typestr
ATTRID: 14
ATTRTYPE: AT_STRING
ATTRVIZ: 1
ATTRDESC:: eod
The string description of this attribute type as a 
way to encode more type structure than 32 bits can
hold.
eod

ATTR: type
ATTRID: 15
#ATTRTYPE: AT_OBJREF(ScpAttrType)
ATTRTYPE: AT_OID
ATTRVIZ: 1
ATTRDESC:: eod
A reference to the type for this attribute.  This is not
currently used but is here in anticipation of moving the
type information from the attribute to the type.
eod

ATTR: sepstr
ATTRID: 16
ATTRTYPE: AT_STRING
ATTRVIZ: 1
ATTRDESC:: eod
The separation string to use when printing (and perhaps
parsing) sequences of components.
eod

ATTR: children
ATTRID: 17
ATTRTYPE: AT_NLIST(AT_OBJ(AttrDesc))
# 1<<16 | 2
ATTRVAL: 65538
ATTRVIZ: 1
ATTRDESC:: eod
If we are using nested objects, have each parent contain its children
eod

ATTR: spec
ATTRID: 18
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The name of the TLV Specification that this attribute/TLV description
is part of.
eod

ATTR: deprecated
ATTRID: 19
ATTRTYPE: AT_INT
ATTRDESC:: eod
The product compatability version in which this attribute 
was deprecated.
eod

CLASS: ScpAttrType
CLASSID: 3
CLASSVIZ: 3
CLASSDESC:: eod
The aobj_h encoding of an attribute type description.  Currently
this is a placeholder until the common attribute type information
is moved out of specific attribute objects into separate, possibly
shared, objects.
eod

CLASS: ScpMessageDesc
CLASSID: 4
CLASSVIZ: 3
CLASSDESC:: eod
The description of an SCP message (as opposed to an actual message, 
which is encoded as Message(6).
eod

ATTR: function
ATTRID: 1
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The function name of the message.  Unlike WSDL, the same message name
will be used for request and response pairs of messages.  
eod

ATTR: desc
ATTRID: 2
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The description of the message.
eod

ATTR: request-attrs
ATTRID: 3
ATTRTYPE: AT_NLIST(OBJ(AttrDesc))
# 1<<16 | 2
ATTRVAL: 65538
ATTRDESC:: eod
The attributes in the request message.
eod

ATTR: response-attrs
ATTRID: 4
ATTRTYPE: AT_NLIST(OBJ(AttrDesc))
# 1<<16 | 2
ATTRVAL: 65538
ATTRDESC:: eod
The attributes in the response message.
eod

ATTR: primary-interface
ATTRID: 5
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The name of the primary interface for this message.
eod

ATTR: secondary-interfaces
ATTRID: 6
ATTRTYPE: AT_NLIST(AT_STRING)
# AT_STRING = 5
ATTRVAL: 5
ATTRDESC:: eod
The names of the secondary interfaces for this message, if known.
eod


CLASS: ChangeEntry
CLASSROOT: CHANGE_ENTRY
CLASSID: 5
CLASSVIZ: 0
CLASSDESC:: eod
The ChangeEntry object describes a change to a single object.  These
are grouped into change sets and applied to the persistent store.
eod

ATTR: oid
ATTRID: 1
ATTRTYPE: AT_OID
ATTRDESC:: eod
The OID of the object being modified by this change entry.
eod

ATTR: classid
ATTRID: 2
ATTRTYPE: AT_INT
ATTRDESC:: eod
The optional class id for the object.  Mainly an efficiency hack to
avoid a database query by OID to make decisions on handling a change.
eod

ATTR: wseq
ATTRID: 3
ATTRTYPE: AT_INT
ATTRDESC:: eod
The write sequence (DBSN) for this object prior to the change.
eod

ATTR: op
ATTRID: 4
ATTRTYPE: AT_ENUMINT(null=0, add=1, del=2, mod=3)
ATTRDESC:: eod
The operation (add, modify or delete) that this change
entries encodes.
eod

ATTR: obj
ATTRID: 5
ATTRTYPE: AT_OBJ(0)
ATTRDESC:: eod
The complete object for add and del operations
eod

ATTR: attrs
ATTRID: 6
ATTRTYPE: AT_NLIST(AT_PACK(BBB+B+|BB+B+B+))
# AT_PACK = 36
ATTRVAL: 36
ATTRDESC:: eod
A list of the modified attributes stored as a packed blob in one
of two encodings:
 A. B - sub-operation, B - attrid, B+ - old value (lenlen 
    encoded), B+ - new val
 B. B - sub-operation, B+ - path, B+ - old value, B+ - new value

The first encoding is only used for the ATTR_MODIFY 
sub-operation (1).  Look in scp.h, at the enum Scp_ChangeSubOp 
for a list of the enum values.

eod

ATTR: name
ATTRID: 7
ATTRTYPE: AT_STRING
ATTRDESC:: eod
An optional name of the changed object, mostly used for modification
operations on objects that are known by name.
eod

CLASS: Message
CLASSROOT: MESSAGE
CLASSID: 6
CLASSNAME: 3
CLASSVIZ: 0
CLASSDESC:: eod
The Message class is used to describe objects that are sent between
processes to implement the CNR Server Control Protocol (SCP).
eod

ATTR: msgid
ATTRID: 1
ATTRTYPE: AT_INT
ATTRDESC:: eod
The identifier of this message.  Generated by the sender of
the message, and is only unique for a given sender.  Mainly
used for response messages to refer back to their request.
eod

ATTR: type
ATTRID: 2
ATTRTYPE: AT_ENUMINT(none=0, request=1, reply=2, event=3, error=10)
ATTRFLAGS: AF_PRINT_ALT
ATTRDESC:: eod
The type or direction of this message.  Currently, we only
support request/reply messages, but asynchronous events 
could be supported in a future version.
eod

ATTR: function
ATTRID: 3
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The message name.  This is the key that the server uses 
to match a message to its actual handler implementation.
It also serves as the key for matching a message to the
specification of its request and response attributes.
eod

ATTR: refid
ATTRID: 4
ATTRTYPE: AT_INT
ATTRDESC:: eod
In a reply or event message, the message-id of the request
message that this message is a reply to.
eod

ATTR: intval
ATTRID: 5
ATTRTYPE: AT_INT
ATTRVIZ: 1
ATTRDESC:: eod
Not used, originally intended to be a shortcut for just
sending a single integer.
eod

ATTR: strval
ATTRID: 6
ATTRHDRNAME: AO_MESSAGE_STRVAL
ATTRTYPE: AT_INT
ATTRVIZ: 1
ATTRDESC:: eod
Not used, originally intended to be a shortcut for just
sending a single string.
eod

ATTR: ipval
ATTRID: 7
ATTRTYPE: AT_IPADDR
ATTRVIZ: 1
ATTRDESC:: eod
Not used, originally intended to be a shortcut for just
sending a single IP address.
eod

ATTR: oidval
ATTRID: 8
ATTRTYPE: AT_OID
ATTRVIZ: 1
ATTRDESC:: eod
Not used, originally intended to be a shortcut for just
sending a single OID.
eod

ATTR: blobval
ATTRID: 9
ATTRTYPE: AT_BLOB
ATTRVIZ: 1
ATTRDESC:: eod
Not used, originally intended to be a shortcut for just
sending a single blob value.
eod

ATTR: data
ATTRID: 10
ATTRTYPE: AT_OBJ(0)
ATTRDESC:: eod
The embedded object containing the message arguments.
eod

ATTR: task-id
ATTRID: 11
ATTRTYPE: AT_INT
ATTRDESC:: eod
An indication that this message was generated by a Task on the 
sender.  The motivation for this attribute is to suppress further 
data propagation in the handler of this message.  A secondary 
motivation is being able to track changes back to a Task and from 
there to a ChangeSet and thus an admin id.

We may only need a boolean indicating of propagation should be 
suppressed.

We may need this boolean in addition to the task id when a Task
generated change should propagate.

We may need multiple bits indicating which kinds of propagations
should be performed or suppressed.

Also see the task-id attribute of a ChangeSet.

eod

ATTR: status
ATTRID: 20
ATTRTYPE: AT_INT
ATTRDESC:: eod
The status of this message.  0 implies success.
eod

ATTR: statstr
ATTRID: 21
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The string description of the status.  Useful for 
encoding a bit more information than a single status
code can encode.
eod

ATTR: exception-list
ATTRID: 22
ATTRTYPE: AT_NLIST(AT_OBJ(ChangeResult))
# 1<<16 | classid(ChangeEntry) 9
ATTRVAL: 65545
ATTRDESC:: eod
An optional list of exception object for conveying
arbitrarily complex error data.

The exception-list attribute will never be set for messages 
that have an Okay status return.

eod

CLASS: ScpConnection
CLASSID: 7
CLASSVIZ: 0
CLASSDESC:: eod
The aobj_h definition of a connection
eod

ATTR: id
ATTRID: 1
ATTRTYPE: AT_INT
ATTRDESC:: eod
A random id for identifying this session.
(Currently an offset in the server's connection list)
eod

ATTR: admin-name
ATTRID: 2
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The user id for this connection.
eod

ATTR: remote-addr
ATTRID: 3
ATTRTYPE: AT_IPADDR
ATTRDESC:: eod
The remote address for this connection.
eod

CLASS: ChangeSet
CLASSID: 8
CLASSROOT: CHANGESET
CLASSVIZ: 0

ATTR: wseq
ATTRID: 1
ATTRTYPE: AT_INT
ATTRDESC:: eod
The write sequence (DBSN) that this change set created.
eod

ATTR: change-list
ATTRID: 2
ATTRTYPE: AT_NLIST(AT_OBJ(ChangeEntry))
# 1<<16 | classid(ChangeEntry) 9
ATTRVAL: 65545
ATTRDESC:: eod
The list of changes in this change set.
eod

ATTR: state
ATTRID: 3
ATTRTYPE: AT_ENUMINT(none=0, init=1, applied=2, error=3);
ATTRDESC:: eod
The state of this change set.  This is used to clarify
the multiple uses of a change set, which include:
a transaction that a client wants to apply, a
change log entry for a datastore, and a way to
report errors about a failed change attempt.
eod

ATTR: dbgen
ATTRID: 4
ATTRTYPE: AT_INT
ATTRDESC:: eod
What generation of the database do these apply to, in
case the 32 bit DBSN rolls.
eod
ATTR: change-date
ATTRID: 5
ATTRTYPE: AT_DATE
ATTRDESC:: eod
When were these changes made
eod

ATTR: admin-name
ATTRID: 6
ATTRTYPE: AT_STRING
ATTRDESC:: eod
Who made these changes
eod

ATTR: task-id
ATTRID: 7
ATTRTYPE: AT_INT
ATTRDESC:: eod
What Task triggered these changes
eod

ATTR: system-id
ATTRID: 8
ATTRTYPE: AT_INT
ATTRDESC:: eod
What system (datastore) initiated the Task?  The general 
semantics of this value are tricky, but for JackSprat, we
make a bunch of simplifying assumptions:
  0/unset ==> the local system/datastore
  1       ==> the CCM datastore
  2       ==> the MCD datastore

The system-id can be set by the Task creator in JackSprat, but
eventually, the handler of the message should know the system-id
of the remote system and add this to the ChangeSet when it is
created or applied in response to a message.
eod

ATTR: result-list
ATTRID: 10
ATTRTYPE: AT_NLIST(AT_OBJ(ChangeResult))
# 1<<16 | classid(ChangeEntry) 9
ATTRVAL: 65545
ATTRFLAGS: AF_TRANSIENT
ATTRDESC:: eod
The results of applying this change set, will be set if there
is an error in applying the change set
eod

ATTR: server-id
ATTRID: 11
ATTRTYPE: AT_OID
ATTRDESC:: eod
The oid of the server. This field is set after successfully pushing a 
list of object to
the remote server.
eod

ATTR: atomic
ATTRID: 12
ATTRTYPE: AT_BOOL
ATTRDEFVAL: true
ATTRDESC:: eod
Can this change set be fragmented if it is too large for 
the underlying datastore transaction configuration.

If false, the apply changeset code will break it up
into smaller changesets.  If true, an error will be
returned if there are too many operations.

eod

# the results from applying a change entry
CLASS: ChangeResult
CLASSID: 9
CLASSVIZ: 0

ATTR: id
ATTRID: 1
ATTRTYPE: int
ATTRDESC:: eod
The index of the corresponding ChangeEntry, for sparse arrays
with just the errors.
eod

ATTR: error-code
ATTRID: 2
ATTRTYPE: AT_INT
ATTRDESC:: eod
The discriminant telling us which of the payload objects is
valid and expected.  Perhaps a bit redundant the class id of
the object, or its attribute id.
eod

ATTR: exception
ATTRID: 3
ATTRTYPE: AT_OBJ(ConsistencyViolation)
ATTRDESC:: eod
The RuleViolation object describing why the change failed.  This
is the general error reporting mechanism
eod

ATTR: detail
ATTRID: 4
ATTRTYPE: AT_OBJ(ConsistencyDetail)
ATTRDESC:: eod
The Detail object for when we are too lazy to cons up a complete
RuleViolation, such as invalid-object errors
eod

ATTR: current-obj
ATTRID: 5
ATTRTYPE: AT_OBJ(0)
ATTRDESC:: eod
For concurrency errors, send back the current object
eod

CLASS: Task
CLASSID: 10
CLASSVIZ: 3
CLASSDESC::eod
A unit of work to be performed by a component system.
Initially will be used to encode propagation within and
between the CCM and MCD datastores in the JackSprat release.
Eventually will be used whereever changes need to be described,
such as in:
  * Future work for planned configuration changes
  * Updates in response to consistency rule violations
  * Updates in response to running out of address space
eod

ATTR: id
ATTRID: 1
ATTRTYPE: AT_INT
ATTRDESC:: eod
The unique id of this task on the originating system.
eod

ATTR: db-id
ATTRID: 2
ATTRTYPE: AT_INT
ATTRDESC:: eod
The Datastore id for this task which qualifies DBSN
  0   -  means the current datastore
  1   - is the CCM datastore for this JackSprat release
  2   - is the local MCD datastore associated with the CCM datastore
  3-n - are the remote datastores

The db-id can also be used as the conn id.
eod

ATTR: state
ATTRID: 3
ATTRTYPE: AT_ENUMINT(NONE=0, INIT=1, QUEUED=2, EXECUTING=3, DONE=4, ERROR=5)
ATTRDESC:: eod
The state of this task.
eod


ATTR: dbsn
ATTRID: 4
ATTRTYPE: AT_INT
ATTRDESC:: eod
The DBSN of the ChangeSet that triggered this task
eod

ATTR: req-list
ATTRID: 7
ATTRTYPE: AT_NLIST(AT_OBJ(Message))
# 1<<16 | classid(ChangeEntry) 6
ATTRVAL: 65542
ATTRDESC:: eod
The requests that make up this task.
eod

ATTR: resp-list
ATTRID: 8
ATTRTYPE: AT_NLIST(AT_OBJ(Message))
# 1<<16 | classid(ChangeEntry) 6
ATTRVAL: 65542
ATTRDESC:: eod
The results from the requests in the task.
eod

CLASS: Secret
CLASSID: 11
CLASSDESC:: eod
A Secret, such as a password, stored separately from the
object using it, and referenced by ID (OID).  The reason
for having Secret objects is so that we can treat them
specially, with more security without having to add the
complexity of encryption to all of the possible objects
that could contain secret or sensitive values.
eod

ATTR: password
ATTRID: 1
ATTRTYPE: AT_BLOB
ATTRDESC:: eod
This is really the value associated with the secret.  It might
be a cleartext password, or it may be some form of hash of the
clear text.  The exact semantics of this blob of data are
determined by the value of the type attribute(2).
eod

ATTR: type
ATTRID: 2
ATTRTYPE: AT_ENUMINT(cleartext=1)
ATTRDEFVAL: 1
ATTRDESC:: eod
The type of the value in this secret.  May be a clear-text password,
or may be a hash of some form.  Currently, the only defined type is
cleartext == 1.
eod



########################################
# C l i e n t E n t r y
# ClientEntry
########################################

CLASS: ClientEntry
CLASSROOT: CE
CLASSID: 12
CLASSNAME: 8
CLASSNAMEDESC:: eod
The ClientEntry is named with one of:
 a) its MAC address for a single client entry.
 b) the literal string 'default' for the default client entry.
 c) the name of a client class for client-class entries.

There are two collections of ClientEntry objects, the client list and
the client-class list.  The objects in the client list are named with
either their MAC address or the literal string 'default'.  The DHCP
server looks up these entries on each DHCP request to find out how it
should process the request.  The objects in the client-class list are
named with arbitrary strings that serve as the name of the client
class that they represent.

The DHCP server uses the unauthenticated-client-class-name and the
client-class-name attributes in the individual client objects to
determine which class they belong to, and then reads the default
attributes from the client-class object with that name.

eod
CLASSVIZ: 5
CLASSDESC:: eod
The client-entry and client-class object.
eod

ATTR: client-class-name
ATTRID: 1
ATTRHDRNAME: AO_CE_CLIENT_CLASS_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: client-class-name
ATTRVIZ: 5
ATTRDESC:: eod
The client-class to which the client belongs. Note that the
client-class-name attribute may only appear in the client entry.
It is an error to specify a client-class name attribute in a
client-class object. If the client is not a member of a client-class,
then the DHCP server uses the default client class properties.
eod

ATTR: host-name
ATTRID: 2
ATTRHDRNAME: AO_CE_HOST_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: host-name
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the host-name. Use this string to replace any host-name
DHCP option sent by the DHCP client.

The first form (hostname) is a string that does not start with a "@."
This form of host-name value is used to override the DHCP
client request host name. When you enter a valid name, you
cause the DHCP server to ignore any host-name specified by
this client, and instead use this client-entry attribute. The
actual value of the host-name option in the client's DHCP
packet is ignored. You can use any valid DNS name. Note you
can not use underscores.

The second form is a string that starts with the special token "@."
Network Registrar uses this form of host-name value to signal the
following special handing:

    @host-name-option
    - Causes the server to use whatever host-name option the
      client sent. This is the default behavior if there is
      no entry for host-name in either the client or client-class.

    @no-host-name-option
    - Causes the server to drop the host-name option that the
      client sent, and not replace it. If you have disabled DNS name
      synthesis, then the client will have no name placed into DNS.

    @use-macaddress
    - Causes the server to synthesize a host-name for the
      client that is derived from its MAC address, and is
      thus unique. This token is used to ensure that a
      client has a valid name in DNS.
eod

ATTR: domain-name
ATTRID: 3
ATTRHDRNAME: AO_CE_DOMAIN_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: domain-name
ATTRVIZ: 5
ATTRDESC:: eod
The domain name (which must be a zone) to use when performing DNS
updates. Places the client's A record in this DNS domain.
eod

ATTR: policy-name
ATTRID: 4
ATTRHDRNAME: AO_CE_POLICY_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: policy-name
ATTRVIZ: 5
ATTRDESC:: eod
The policy to add to Network Registrar's DHCP policy search list
for this client.
eod

ATTR: action
ATTRID: 5
ATTRHDRNAME: AO_CE_ACTION
ATTRTYPE: AT_FLAGSINT(exclude=1,one-shot=2,use-release-grace-period=3,none=32)
ATTRMCDPATH: action
ATTRVIZ: 5
ATTRDESC:: eod
The action to take for this client.  You can specify exclude,
one-shot, and/or use-release-grace-period.

Exclude causes the server to ignore all communication from
this client. If you specify the exclude action in the default client
entry, then any client not specifically registered through the use of
the client command will not be allowed to communicate with the server.

One-shot causes the server to fail to renew or re-offer any lease made
to a client that has specified this action string (either
directly or in a client-class entry).  You can use the
one-shot action to allocate provisional addresses, which are
useful in cases in which you want an unknown client to have an
address for only a short period of time.

'Use-release-grace-period' causes the server to delay the effect of
any RELEASE messages the client sends. A Policy property called
'release-grace-period' specifies the delay.  During the grace period,
the client's lease won't be made available for any other client.
eod

ATTR: old-inclusion-mask
ATTRID: 6
ATTRHDRNAME: AO_CE_INCLUSION_MASK
ATTRTYPE: AT_INT
ATTRMCDPATH: inclusion-mask
ATTRVIZ: 3
ATTRDESC:: eod
This attribute is not used.
eod

ATTR: old-exclusion-mask
ATTRID: 7
ATTRHDRNAME: AO_CE_EXCLUSION_MASK
ATTRTYPE: AT_INT
ATTRMCDPATH: exclusion-mask
ATTRVIZ: 3
ATTRDESC:: eod
This attribute is not used.
eod

ATTR: name
ATTRID: 8
ATTRHDRNAME: AO_CE_NAME
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_UNIQUE
ATTRMCDPATH: name
ATTRVIZ: 3
ATTRDESC:: eod
The name of the client.
eod

ATTR: authenticate-until
ATTRID: 9
ATTRHDRNAME: AO_CE_AUTHENTICATION_EXPIRES
ATTRTYPE: AT_DATE
ATTRMCDPATH: authentication-expires
ATTRVIZ: 5
ATTRDESC:: eod
Sets an authentication expiration date. Formats for the date are:

 +<num><unit>
   Time in the future, where num is a decimal number and unit is 
   s, m, h, d, or w for seconds, minutes, hours, days or weeks, 
   respectively.
 
 <month> <day> <hour>:<minute>[:<second>] <year>
   Month, day, 24-hour time, and 2-or-4-digit-year. 
   For example:Jun 30 20:00:00 2002. Enter the time that is local  
   to the nrcmd process. 
 
 forever
   Does not expire the authentication for this client.

eod

ATTR: authentication-sequence
ATTRID: 10
ATTRHDRNAME: AO_CE_AUTHENTICATION_SEQUENCE
ATTRTYPE: AT_INT
ATTRMCDPATH: authentication-sequence
ATTRVIZ: 3
ATTRDESC:: eod
This attribute is not used.
eod

ATTR: unauthenticated-client-class-name
ATTRID: 11
ATTRHDRNAME: AO_CE_UNAUTHENTICATED_CLIENT_CLASS_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: unauthenticated-client-class-name
ATTRVIZ: 5
ATTRDESC:: eod
The name of the client-class to use if this client is no longer
authenticated.
eod

ATTR: user-defined
ATTRID: 12
ATTRHDRNAME: AO_CE_COOKIE_STR
ATTRTYPE: AT_STRING
ATTRMCDPATH: cookie-str
ATTRVIZ: 5
ATTRDESC:: eod
An opaque user-defined string that can be set and queried. This
property has no effect on the operation of the DHCP server.
eod

ATTR: environment-dictionary
ATTRID: 13
ATTRHDRNAME: AO_CE_ENV_DICTIONARY
ATTRTYPE: AT_DICT(AT_STRING)
ATTRMCDPATH: environment-dictionary
ATTRVIZ: 3

ATTR: selection-criteria
ATTRID: 14
ATTRHDRNAME: AO_CE_INCLUSION_CRITERIA
ATTRTYPE: AT_ARRAY(AT_STRING)
ATTRMCDPATH: inclusion-criteria
ATTRVIZ: 5
ATTRDESC:: eod
All of the criteria in this list must appear in the scope
selection tags for a scope to be considered acceptable to
this client.
eod

ATTR: selection-criteria-excluded
ATTRID: 15
ATTRHDRNAME: AO_CE_EXCLUSION_CRITERIA
ATTRTYPE: AT_ARRAY(AT_STRING)
ATTRMCDPATH: exclusion-criteria
ATTRVIZ: 5
ATTRDESC:: eod
None of the criteria in this list may appear in a scope's
selection tags for that scope to be considered acceptable
for this client.
eod

ATTR: version
ATTRID: 16
ATTRHDRNAME: AO_CE_VERSION
ATTRTYPE: AT_INT
ATTRMCDPATH: version
ATTRVIZ: 1

ATTR: status
ATTRID: 17
ATTRHDRNAME: AO_CE_STATUS
ATTRTYPE: AT_ENUMINT(success=0, no-results=1, ldap-failure=2)
ATTRVIZ: 1
ATTRMCDPATH: status
ATTRDESC::eod
For internal use only.
eod

ATTR: embedded-policy
ATTRID: 18
ATTRHDRNAME: AO_CE_EMBEDDED_POLICY
ATTRTYPE: AT_OBJ(Policy)
ATTRMCDPATH: embedded-policy
ATTRVIZ: 5
ATTRDESC:: eod
The embedded policy object for this client or client-class.
eod

ATTR: over-limit-client-class-name
ATTRID: 19
ATTRHDRNAME: AO_CE_OVER_LIMIT_CLIENT_CLASS_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: over-limit-client-class-name
ATTRVIZ: 5
ATTRDESC:: eod
The name of the client-class to use if this client is over the limit
allowed for the number of simultaneous active leases with a common
limitation-id.  See limitation-id, and policy limitation-count.
eod

ATTR: limitation-id
ATTRID: 20
ATTRHDRNAME: AO_CE_LIMITATION_ID
ATTRTYPE: AT_EXPR
ATTRMCDPATH: limitation-id
ATTRVIZ: 3
ATTRDESC:: eod
An expression which evaluates to a blob (or a string which can be
used as a blob). The resulting value relates together leases for
which there exists a maximum limit on the number of simultaneous
active leases allowed. The limit is configured in a policy, using
the 'limitation-count' property. See also 'over-limit-client-class'.
eod

ATTR: client-lookup-id
ATTRID: 21
ATTRHDRNAME: AO_CE_CLIENT_LOOKUP_ID
ATTRTYPE: AT_EXPR
ATTRMCDPATH: client-lookup-id
ATTRVIZ: 3
ATTRDESC:: eod
An expression which evaluates to a string (or a blob which is a
valid string).  The resulting value specifies the key value to be
used to lookup the client in the client database, either locally
or through LDAP.
eod

ATTR: reservation-id
ATTRID: 22
ATTRHDRNAME: AO_CE_RESERVATION_ID
ATTRTYPE: AT_EXPR
ATTRMCDPATH: reservation-id
ATTRVIZ: 1
ATTRDESC:: eod
An expression which evaluates to a string (or a blob which is a valid
string).  The resulting value specifies the key to be used to lookup
any reservations that have been made for this client.
eod

ATTR: max-client-lookups
ATTRID: 23
ATTRHDRNAME: AO_CE_MAX_CLIENT_LOOKUPS
ATTRTYPE: AT_INT
ATTRMCDPATH: max-client-lookups
ATTRVIZ: 1
ATTRDESC:: eod
An integer which specifies the maximum number of client database
lookups allowed.  Should be a small number (e.g., 2 or so).  The
default value (if none is specified in either the client or
client-class) is 1.

This might have been in CNR 6.0, but the looping looked too difficult
compared to the value to customers, and so we decided not to implement
it.  If we ever do looping, use this property to control the number of
loops.
eod

ATTR: default-namespace
ATTRID: 24
ATTRHDRNAME: AO_CE_DEFAULT_NAMESPACE_NAME
ATTRTYPE: AT_NAMEREF(VPN)
ATTRVAL: 1127
ATTRVIZ: 5
ATTRDESC:: eod
The namespace to put this client in if it does not supply a VPN-ID
(or vrf-name) value.
eod

ATTR: override-namespace
ATTRID: 25
ATTRHDRNAME: AO_CE_OVERRIDE_NAMESPACE_NAME
ATTRTYPE: AT_NAMEREF(VPN)
ATTRVAL: 1127
ATTRVIZ: 5
ATTRDESC:: eod
The namespace to put this client, no matter what it provides
for a VPN-ID (or vrf-name) value.
eod

######################################################################
########################################
# end ClientEntry
########################################

########################################
# C l i e n t S t a t e
# ClientState
########################################

CLASS: ClientState
CLASSROOT: CLIENT_STATE
CLASSID: 13
CLASSVIZ: 3
CLASSDESC:: eod
Ask Kim or Mark
eod

ATTR: client-id
ATTRID: 1
ATTRHDRNAME: AO_CLIENT_STATE_CLIENT_ID
ATTRTYPE: AT_STRING
ATTRMCDPATH: client-id

ATTR: initialization-sequence
ATTRID: 2
ATTRHDRNAME: AO_CLIENT_STATE_INITIALIZATION_SEQUENCE
ATTRTYPE: AT_INT
ATTRMCDPATH: initialization-sequence

ATTR: client-state-flags
ATTRID: 3
ATTRHDRNAME: AO_CLIENT_STATE_CLIENT_STATE_FLAGS
ATTRTYPE: AT_INT
ATTRMCDPATH: client-state-flags

ATTR: client-state-lease-address
ATTRID: 4
ATTRHDRNAME: AO_CLIENT_STATE_CLIENT_STATE_LEASE_ADDRESS
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: client-state-lease-address

CLASS: Session
CLASSROOT: SESSION
CLASSID: 14
CLASSVIZ: 1
CLASSDESC:: eod
Ask Peter or Caesar
eod

ATTR: session-mgr-key
ATTRID: 1
ATTRHDRNAME: AO_SESSION_MGR_KEY
ATTRTYPE: AT_STRING
ATTRMCDPATH: session-mgr-key

ATTR: session-id
ATTRID: 2
ATTRHDRNAME: AO_SESSION_ID
ATTRTYPE: AT_INT
ATTRMCDPATH: session-id

ATTR: session-start-time
ATTRID: 3
ATTRHDRNAME: AO_SESSION_START_TIME
ATTRTYPE: AT_DATE
ATTRMCDPATH: session-start-time

ATTR: session-nas-identifier
ATTRID: 4
ATTRHDRNAME: AO_SESSION_NAS_IDENTIFIER
ATTRTYPE: AT_STRING
ATTRMCDPATH: session-nas-identifier

ATTR: session-nas-ip-address
ATTRID: 5
ATTRHDRNAME: AO_SESSION_NAS_IP_ADDRESS
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: session-nas-ip-address

ATTR: session-nas-port
ATTRID: 6
ATTRHDRNAME: AO_SESSION_NAS_PORT
ATTRTYPE: AT_INT
ATTRMCDPATH: session-nas-port

ATTR: session-user-name
ATTRID: 7
ATTRHDRNAME: AO_SESSION_USER_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: session-user-name

ATTR: session-ip-dynamic-resourcemanager
ATTRID: 8
ATTRHDRNAME: AO_SESSION_IP_DYNAMIC_RESOURCEMANAGER
ATTRTYPE: AT_STRING
ATTRMCDPATH: session-ip-dynamic-resourcemanager

ATTR: session-ip-dynamic-resource
ATTRID: 9
ATTRHDRNAME: AO_SESSION_IP_DYNAMIC_RESOURCE
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: session-ip-dynamic-resource

ATTR: session-ip-per-nas-port-resourcemanager
ATTRID: 10
ATTRHDRNAME: AO_SESSION_IP_PER_NAS_PORT_RESOURCEMANAGER
ATTRTYPE: AT_STRING
ATTRMCDPATH: session-ip-per-nas-port-resourcemanager

ATTR: session-ip-per-nas-port-resource
ATTRID: 11
ATTRHDRNAME: AO_SESSION_IP_PER_NAS_PORT_RESOURCE
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: session-ip-per-nas-port-resource

ATTR: session-ipx-dynamic-resourcemanager
ATTRID: 12
ATTRHDRNAME: AO_SESSION_IPX_DYNAMIC_RESOURCEMANAGER
ATTRTYPE: AT_STRING
ATTRMCDPATH: session-ipx-dynamic-resourcemanager

ATTR: session-ipx-dynamic-resource
ATTRID: 13
ATTRHDRNAME: AO_SESSION_IPX_DYNAMIC_RESOURCE
ATTRTYPE: AT_BLOB
ATTRMCDPATH: session-ipx-dynamic-resource

ATTR: session-concurrent-session-counter-resourcemanager
ATTRID: 14
ATTRHDRNAME: AO_SESSION_CONCURRENT_SESSION_COUNTER_RESOURCEMANAGER
ATTRTYPE: AT_STRING
ATTRMCDPATH: session-concurrent-session-counter-resourcemanager

ATTR: session-concurrent-session-counter-resource
ATTRID: 15
ATTRHDRNAME: AO_SESSION_CONCURRENT_SESSION_COUNTER_RESOURCE
ATTRTYPE: AT_INT
ATTRMCDPATH: session-concurrent-session-counter-resource

ATTR: session-user-session-counter-resourcemanager
ATTRID: 16
ATTRHDRNAME: AO_SESSION_USER_SESSION_COUNTER_RESOURCEMANAGER
ATTRTYPE: AT_STRING
ATTRMCDPATH: session-user-session-counter-resourcemanager

ATTR: session-user-session-counter-resource
ATTRID: 17
ATTRHDRNAME: AO_SESSION_USER_SESSION_COUNTER_RESOURCE
ATTRTYPE: AT_INT
ATTRMCDPATH: session-user-session-counter-resource

CLASS: ConsistencyRule
CLASSID: 15
CLASSVIZ: 3
CLASSDESC:: eod
The ConsistencyRule class describes an object that reports on the
violation of a consistency rule.
eod

ATTR: id
ATTRTYPE: AT_INT
ATTRFLAGS: AF_UNIQUE
ATTRDESC:: eod
The unique id of the rule, the very small numbers 1-10 or so
should be reserved for intrinsic rules, and their should be some
categorization ranges of ids for general categories such as
Subnet checks, etc.
eod

ATTR: desc
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The textual description of the rule
eod


CLASS: ConsistencyViolation
CLASSID: 16
CLASSDESC:: eod
The ConsistencyViolation class describes an object that reports
on the violation of a consistency rule.
eod

ATTR: rule-id
ATTRID: 1
ATTRTYPE: AT_INT
ATTRDESC:: eod
The numeric id of the rule that was violated.
eod

ATTR: obj-list
ATTRID: 2
ATTRTYPE: AT_NLIST(AT_OBJ(0))
# 1<<16 | 0
ATTRVAL: 65536

ATTRDESC:: eod
The list of objects that contributed to this specific
ConsistencyRule violation
eod

ATTR: detail-list
ATTRID: 3
ATTRTYPE: AT_NLIST(AT_OBJ(ConsistencyDetail))
# 1<<16 | 17
ATTRVAL: 65553

ATTRDESC:: eod
The list of details, usually about the attributes, for each object
that contributed to the ConsistencyRule violation
eod

ATTR: index
ATTRID: 4
ATTRTYPE: AT_INT
ATTRDESC:: eod
If there are multiple changes in a request, the index attribute can be
used to identify which one caused this violation.
eod

ATTR: assertion-id
ATTRID: 5
ATTRTYPE: AT_INT
ATTRDESC:: eod
The numeric id representing the type of assertion.
eod

ATTR: attr-id
ATTRID: 6
ATTRTYPE: AT_INT
ATTRDESC:: eod
The numeric id representing the type of assertion.
eod

ATTR: desc
ATTRID: 7
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The optional textual description for the consistency violation.
eod


CLASS: ConsistencyDetail
CLASSID: 17
CLASSDESC:: eod
The ConsistencyDetail class describes an object that holds details
about a ConsistencyException for a specific object.
eod

ATTR: obj
ATTRID: 1
ATTRTYPE: AT_OID
ATTRDESC:: eod
The object for which this detail applies
eod

ATTR: attrs
ATTRID: 2
ATTRTYPE: AT_NLIST(AT_PACK(BBB*))
# AT_PACK = 36
ATTRVAL: 36
ATTRDESC:: eod
The list of attributes that are in conflict with the rule.  The
encoding of the per-attribute exception information is a bit
terse.  It consists of:
  B  - one byte of attribute id
  B  - one byte of type
  B* - remaining bytes formatted with respect to the type byte:
       type         semantics
        1            string text (null terminated)
        2            attr-error value (1 byte, common + rule-specific
                                       semantics)
        3            attr-error value (1 byte) plus null terminated 
                     string text
        4            AIC error code (4 bytes)
        5            AIC error code (4 bytes) plus null terminated 
                     string text

 Common Attr Error codes (for type 2 and type 3):
  1  - required attribute missing
  2  - invalid attribute data
  3  - unique attribute duplicated
  4  - DNS name unresolvable
  5  - transient attribute trying to be persisted

eod

ATTR: classid
ATTRID: 3
ATTRTYPE: AT_SHORT
ATTRDESC:: eod
The class id of the object, in case it is hard to turn the
OID into an object to get its class id.
eod

CLASS: ScpInfo
CLASSID: 18
CLASSDESC:: eod
The ScpServerInfo class describes an object that encapsulates the 
general (and not-so-general) information about an SCP server.

Originally, GetSupportedInterfaces was supposed to provide all
of the necessary information about a server, but it is now being
used to determine per-user admin access.

eod

ATTR: interfaces
ATTRID: 1
ATTRTYPE: AT_NLIST(AT_PACK(BIS))
# AT_PACK = 36
ATTRVAL: 36
ATTRDESC:: eod
The list of interfaces (along with version numbers) that this server
supports.  Each pack consists of a type byte and then a version and 
an interface name:
  B  - one byte of type (originally 0):
  I  - A version number 32 bit integer
  S  - the null terminated string name of the interface
eod

ATTR: ccm-server-type
ATTRID: 2
ATTRTYPE: AT_ENUMINT(UNKNOWN=0, LOCAL_CCM=1, REGIONAL_CCM=2, CMTS=3)
ATTRDESC:: eod
The type of this server
eod

ATTR: product-version
ATTRID: 3
ATTRTYPE: AT_PCV
ATTRDESC:: eod
The product version number in major, minor, rev form
eod

ATTR: compatibility-version
ATTRID: 4
ATTRTYPE: AT_PCV
ATTRDESC:: eod
The product compatibility version number in major, minor, rev form
eod

ATTR: ccm-dbsn
ATTRID: 5
ATTRTYPE: AT_INT
ATTRDESC:: eod
The current DBSN of the CCM datastore
eod

ATTR: mcd-dbsn
ATTRID: 6
ATTRTYPE: AT_INT
ATTRDESC:: eod
The current DBSN of the MCD datastore
eod

ATTR: build-string
ATTRID: 7
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The current build string of the product, mostly useful during
development when the build to version number is not so stable.
eod

# This class is initially needed to convey role information to
# clients, but could also be used to provide further information
# about an interface, so I will call it ScpInterfaceDesc.  Since
# every role has a corresponding interface, this object can completely
# describe a role as well.

CLASS: ScpInterfaceDesc
CLASSID: 19
CLASSVIZ: 3
CLASSDESC:: eod
A description of an SCP interface.  Initially used to provide
role information to the user interface, but expected to be a 
more general description of the message interfaces.
eod

ATTR: name
ATTRID: 1
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_UNIQUE
ATTRDESC::eod
The name of the interface.  This name corresponds to the 
name used in the specifications and mspec files.
eod

ATTR: role-name
ATTRID: 2
ATTRTYPE: AT_STRING
ATTRDESC::eod
Used if we have a different set of names for the roles.
eod

ATTR: sub-roles
ATTRID: 3
ATTRTYPE: AT_NLIST(AT_STRING)
# AT_STRING = 5
ATTRVAL: 5
ATTRDESC::eod
The list of sub-roles in this role.
eod

# Note that the following two lists match the current 
# interface/message relationship, but as we gain more
# experience with sub-roles, it may become more useful
# to provide groupings of messages by sub-role.  This
# will require a different structure, perhaps a dictionary
# of list(string) keyed by sub-role name.

ATTR: primary-messages
ATTRID: 4
ATTRTYPE: AT_NLIST(AT_STRING)
# AT_STRING = 5
ATTRVAL: 5
ATTRDESC::eod
The names of the messages for which this interface is primary
eod

ATTR: secondary-messages
ATTRID: 5
ATTRTYPE: AT_NLIST(AT_STRING)
# AT_STRING = 5
ATTRVAL: 5
ATTRDESC::eod
The names of the messages for which this interface is secondary
eod

CLASS: RemoteRequestStatus
CLASSID: 20
CLASSDESC:: eod
An object that describes an error status detected from 
making a request to a remote server as part of handling
a single request.  The main use of this status object
is when some remote requests succeed and others fail.

Messages that can have this mixed result status should
define an attribute that is a list of these RemoteRequestStatus
objects and should return an overall status of OK with these
status objects describing the secondary failures.

eod

ATTR: server
ATTRID: 1
#ATTRTYPE: AT_OBJREF(CCMServer|CCMCluster)
ATTRTYPE: AT_OID
ATTRDESC:: eod
The remote server that this status refers to
eod

ATTR: error
ATTRID: 2
ATTRTYPE: AT_INT
ATTRDESC:: eod
The 32 bit error code describing this error status.  Unless otherwise
specified, this should be interpreted as an areturn_t using the AX_*
macros and names.
eod

ATTR: status
ATTRID: 3
ATTRTYPE: AT_INT
ATTRDESC:: eod
The MS_* SCP message status code
eod

ATTR: statstr
ATTRID: 4
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The status string from the response message
eod

ATTR: exception-list
ATTRID: 5
ATTRTYPE: AT_NLIST(AT_OBJ(0))
# 1<<16 | 0
ATTRVAL: 65536
ATTRDESC:: eod
The exception-list from the response message
eod

CLASS: Node
CLASSID: 21
CLASSDESC:: eod
This class manages node relationships in ordered trees of ScpObj
objects. Its data is transient and should not be persisted to the
datastore. The OID of the Node is the OID of the contained (or
referenced) ScpObj, masked with a transient bit.
This class is used in conjunction with the GetTreePage and
related Scp messages.
eod

ATTR: object
ATTRID: 1
ATTRTYPE: AT_OBJ
ATTRDESC:: eod
The ScpObj which this node contains.  This is optional, as
the Node's OID can be converted into the OID of a referenced
ScpObj, but for many trees it will be more convenient simply
to embed the object here.
eod

ATTR: depth
ATTRID: 2
ATTRTYPE: AT_INT
ATTRDESC:: eod
The depth of this node, where root node has depth 0.
eod

ATTR: parent
ATTRID: 3
ATTRTYPE: AT_OBJREF(Node)
ATTRDESC:: eod
The OID of the node which is the parent of this node.
eod

ATTR: child-order
ATTRID: 4
ATTRTYPE: AT_INT
ATTRDESC:: eod
The index of this child node in its parent's children. 
An index of 0 indicates that this is the first child of
the parent node, while an index of parent.child-count-1
indicates that this is the last child of the parent node.
eod

ATTR: child-count
ATTRID: 5
ATTRTYPE: AT_INT
ATTRDEFVAL: 0
ATTRDESC:: eod
The count of children of this node in the full tree.
eod

ATTR: expansion-state
ATTRID: 6
ATTRTYPE: AT_ENUMINT(expanded=1,collapsed=2)
ATTRDESC:: eod
If set, this attribute tells whether the node should be
displayed as expanded or contracted.  If unset, the node's
expansion will be determined by the default depth of the
containing tree.
eod

ATTR: display-only
ATTRID: 7
ATTRTYPE: AT_BOOL
ATTRDESC:: eod
If set to 'true', this node is included for display only, and
should not be presented as an editable or navigable link.
This type of node is included to provide context for normal
nodes for constrained administrators, for example.
eod

# Utility classes

# test attribute types
CLASS: Test
CLASSROOT: TEST
CLASSID: 40
CLASSNAME: 1
CLASSVIZ: 0
CLASSDESC:: <eod>
This Class is meant to provide a simple means of testing various 
data types and relationships.
<eod>

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_TEST_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name

ATTR: decint
ATTRID: 2
ATTRHDRNAME: AO_TEST_DECINT
ATTRTYPE: AT_INT
ATTRMCDPATH: decint

ATTR: hexint
ATTRID: 3
ATTRHDRNAME: AO_TEST_HEXINT
ATTRTYPE: AT_INT
ATTRMCDPATH: hexint
ATTRFLAGS: AF_PRINT_ALT

ATTR: tf
ATTRID: 4
ATTRHDRNAME: AO_TEST_TF
ATTRTYPE: AT_BOOL
ATTRMCDPATH: tf

ATTR: onoff
ATTRID: 5
ATTRHDRNAME: AO_TEST_ONOFF
ATTRTYPE: AT_BOOL
ATTRMCDPATH: onoff
ATTRFLAGS: AF_PRINT_ALT

ATTR: time
ATTRID: 6
ATTRHDRNAME: AO_TEST_TIME
ATTRTYPE: AT_TIME
ATTRMCDPATH: time

ATTR: addrs
ATTRID: 7
ATTRHDRNAME: AO_TEST_ADDRS
ATTRTYPE: AT_ARRAY(AT_IPADDR)
ATTRMCDPATH: addrs

ATTR: mac
ATTRID: 8
ATTRHDRNAME: AO_TEST_MAC
ATTRTYPE: AT_MACADDR
ATTRMCDPATH: mac

ATTR: records
ATTRID: 9
ATTRHDRNAME: AO_TEST_RECORDS
ATTRTYPE: AT_LISTREF(ResourceRecord)
ATTRMCDPATH: records
ATTRVAL: 1202

ATTR: options
ATTRID: 10
ATTRHDRNAME: AO_TEST_OPTIONS
ATTRTYPE: AT_ARRAY(AT_STRUCT(Option))
ATTRMCDPATH: options
ATTRVAL: 1103

ATTR: enumint
ATTRID: 11
ATTRTYPE: AT_ENUMINT(red=1,blue=3,green=5)
ATTRMCDPATH: enumint
ATTRDEFVAL: green

ATTR: enumstr
ATTRID: 12
ATTRTYPE: AT_ENUMSTR(ldap, tacacs, tacacs+, mcd, remote)
ATTRMCDPATH: enumstr
ATTRDEFVAL: mcd

ATTR: rangeint
ATTRID: 13
ATTRTYPE: AT_RANGEINT(1-255)
ATTRMCDPATH: rangeint
ATTRDEFVAL: 42

ATTR: flags
ATTRID: 14
ATTRTYPE: AT_FLAGSINT(a,b,c)
ATTRMCDPATH: flags
ATTRDEFVAL: a,c

ATTR: dict
ATTRID: 15
ATTRHDRNAME: AO_TEST_DICT
ATTRTYPE: AT_DICT(AT_BOOL)
ATTRMCDPATH: dict

ATTR: hidden-3
ATTRID: 16
ATTRHDRNAME: AO_TEST_HIDDEN_3
ATTRTYPE: AT_INT
ATTRMCDPATH: hidden-3
ATTRVIZ: 3

ATTR: hidden-1
ATTRID: 17
ATTRHDRNAME: AO_TEST_HIDDEN_1
ATTRTYPE: AT_INT
ATTRMCDPATH: hidden-1
ATTRVIZ: 1

ATTR: date
ATTRID: 18
ATTRHDRNAME: AO_TEST_DATE
ATTRTYPE: AT_DATE
ATTRMCDPATH: date

ATTR: rngtim
ATTRID: 19
ATTRHDRNAME: AO_TEST_RANGETIME
ATTRTYPE: AT_RANGETIME(10000-100000)
ATTRMCDPATH: rngtim

ATTR: eb
ATTRID: 20
ATTRHDRNAME: AO_TEST_EB
ATTRTYPE: AT_ENUMBYTE(a, b, c, d=10)
ATTRMCDPATH: tf

# CLASSID RANGE Common configuration classes 50 - 100
#
# These classes (or records) are used by several configuration objects


CLASS: AddrSet
CLASSROOT: ADDRSET
CLASSID: 50
CLASSNAME: 1
CLASSNAMEDESC:: eod
The name of the AddrSet object is the FQDN that the list of addresses are
associated with.  The exact semantics of this FQDN (and the associated
addresses) depend on the location of the AddrSet object.  In the DNS
server root hint list, the FQDN is the name of a root server and the
addresses are the interfaces that that server is listening on.  In the DNS
server resolution exception list, the FQDN is the name of a domain that
should use the exceptional resolution algorithm, and the address list
contains the addresses of the name servers that should be queried for
information about names in the given domain.
eod
CLASSVIZ: 5
CLASSDESC:: eod
More of a record/struct than a class -- used to model a named,
possibly ordered set of IP addresses, such as the servers to query
for a given domain, or addresses of the root servers.
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_ADDRSET_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRVIZ: 5
ATTRDESC:: eod
The name of the address set.  In the case of resolution exceptions,
it is the name of the domain for which we have a list of resolvers.
eod

ATTR: addrs
ATTRID: 2
ATTRHDRNAME: AO_ADDRSET_ADDRS
ATTRTYPE: AT_ARRAY(AT_IPADDR)
ATTRMCDPATH: addrs
ATTRVIZ: 5
ATTRDESC:: eod
The ordered list of addresses.
eod

CLASS: ScriptConfig
CLASSROOT: SCRIPTCONF
CLASSID: 51
CLASSNAME: 1
CLASSNAMEDESC:: eod
The name of a ScriptConfig object has no semantic meaning, but it must be
unique in this cluster.  It is used for matching extensions with extension
points.
eod
CLASSVIZ: 5
CLASSDESC:: eod
The general description of a server script (extension module)
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_SCRIPTCONF_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: Name
ATTRFLAGS: AF_UNIQUE
ATTRVIZ: 3
ATTRDESC:: eod
The name of the script or module. The DHCP server uses
this name to assign scripts or modules to script points.
eod

ATTR: lang
ATTRID: 2
ATTRHDRNAME: AO_SCRIPTCONF_LANG
ATTRTYPE: AT_ENUMSTR(Tcl, Dex)
ATTRMCDPATH: Language
ATTRVIZ: 5
ATTRDESC:: eod
The language in which the script or module is implemented. 'Tcl'
indicates that the module is a Tcl script (tcl7.5). 'Dex' indicates
that the module is a shared object with C calling interfaces.
eod

ATTR: source
ATTRID: 3
ATTRHDRNAME: AO_SCRIPTCONF_SOURCE
ATTRTYPE: AT_STRING
ATTRMCDPATH: Source
ATTRVIZ: 0
ATTRDESC:: eod
This is not used by the server anymore, but remains
so that the ATTRID does not get reused.
eod

ATTR: file
ATTRID: 4
ATTRHDRNAME: AO_SCRIPTCONF_FILE
ATTRTYPE: AT_STRING
ATTRMCDPATH: Filename
ATTRVIZ: 5
ATTRDESC:: eod
The file system path of the file that contains this module.  The
interpretation of relative paths and path component separators is
server-implementation specific.  This parameter must be specified for
every extension.
eod

ATTR: entry
ATTRID: 5
ATTRHDRNAME: AO_SCRIPTCONF_ENTRYPOINT
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: EntryPoint
ATTRVIZ: 5
ATTRDESC:: eod
The name of the entry point for the module.  This function is called
from any extension point to which this module is bound.
eod

ATTR: init-entry
ATTRID: 6
ATTRHDRNAME: AO_SCRIPTCONF_INITENTRY
ATTRTYPE: AT_STRING
ATTRMCDPATH: InitEntryPoint
ATTRVIZ: 5
ATTRDESC:: eod
The name of the init entry point. If you set it, the server
calls this function when the server loads the module.
It is not required.
eod

ATTR: init-args
ATTRID: 7
ATTRHDRNAME: AO_SCRIPTCONF_INITARGS
ATTRTYPE: AT_STRING
ATTRMCDPATH: InitEntryPointArgs
ATTRVIZ: 5
ATTRDESC:: eod
The arguments that should be passed to the init-entry
point function. The arguments are passed in the environment
dictionary using the key "Arguments".
eod

#
# The java class to call
#

ATTR: java-class
ATTRID: 8
ATTRHDRNAME: AO_SCRIPTCONF_CLASS
ATTRTYPE: AT_STRING
ATTRMCDPATH: ClassName
ATTRVIZ: 1
ATTRDESC:: eod
Could be the java class name for this script, but the server
does not implement java extensions.
eod

ATTR: bytes
ATTRID: 9
ATTRHDRNAME: AO_SCRIPTCONF_BYTES
ATTRTYPE: AT_BLOB
ATTRMCDPATH: CompiledBytes
ATTRVIZ: 0
ATTRDESC:: eod
This is not used by the server anymore, but remains
so that the ATTRID does not get reused.
eod

#
# biannone 12/5/02
# If you give this a CLASSKEY, (which I don't think it needs unless you 
# change the naming format in mcd), you'll need to update
# ao_class_get_mcd_key to handle this as special case (similar to 
# how ao_class_get_obj_name does). 
#
CLASS: Interface
CLASSROOT: INTERFACE
CLASSID: 52
CLASSNAME: 1
CLASSNAMEDESC:: eod
The name of an Interface object is either the literal string 'default', or
its addr and mask values in <address>/<bits> format.  The interface named
'default' is used to provide default values to auto-discovered interfaces that
do not have any configuration information.  The names of the other interfaces
do not have semantic meaning -- the DHCP server looks at the values for the
addr and mask attributes to determine the IP address and netmask.
eod
CLASSVIZ: 5
CLASSDESC:: eod
The general description of a server interface.
heavily biased by the DHCP interface configuration.
eod

ATTR: addr
ATTRID: 1
ATTRHDRNAME: AO_INTERFACE_IPADDR
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: IPAddress
ATTRVIZ: 5
ATTRDESC:: eod
The IP address of the interface.
eod

ATTR: mask
ATTRID: 2
ATTRHDRNAME: AO_INTERFACE_NETMASK
ATTRTYPE: AT_MASK
ATTRMCDPATH: NetMask
ATTRVIZ: 5
ATTRDESC:: eod
The mask of network number bits in the address.
eod

ATTR: type
ATTRID: 3
ATTRHDRNAME: AO_INTERFACE_TYPE
ATTRTYPE: AT_ENUMINT(DHCP, DNS)
ATTRMCDPATH: type
ATTRFLAGS: AF_PRINT_ALT
ATTRVIZ: 3
ATTRDESC:: eod
The type of server that is using this interface description.
eod

ATTR: dhcp-port
ATTRID: 13
ATTRHDRNAME: AO_INTERFACE_DHCPPORT
ATTRTYPE: AT_INT
ATTRMCDPATH: DHCPPort
ATTRFEAT: type == DHCP
ATTRVIZ: 3
ATTRDESC:: eod
The port number that the DHCP server should use for this interface.
eod

ATTR: dns-port
ATTRID: 14
ATTRHDRNAME: AO_INTERFACE_DNSPORT
ATTRTYPE: AT_INT
ATTRMCDPATH: DNSPort
ATTRFEAT: type == DHCP
ATTRVIZ: 3

ATTR: ping-port
ATTRID: 15
ATTRHDRNAME: AO_INTERFACE_PINGPORT
ATTRTYPE: AT_INT
ATTRMCDPATH: PingPort
ATTRFEAT: type == DHCP
ATTRVIZ: 3

ATTR: client-port
ATTRID: 16
ATTRHDRNAME: AO_INTERFACE_CLIENTPORT
ATTRTYPE: AT_INT
ATTRMCDPATH: ClientPort
ATTRFEAT: type == DHCP
ATTRVIZ: 3

ATTR: relay-port
ATTRID: 17
ATTRHDRNAME: AO_INTERFACE_RELAYPORT
ATTRTYPE: AT_INT
ATTRMCDPATH: RelayPort
ATTRFEAT: type == DHCP
ATTRVIZ: 3

ATTR: min-buffer-size
ATTRID: 18
ATTRHDRNAME: AO_INTERFACE_MINIMUMSOCKETBUFFERSIZE
ATTRTYPE: AT_INT
ATTRDEFVAL: 16384
ATTRMCDPATH: MinimumSocketBufferSize
ATTRFEAT: type == DHCP
ATTRVIZ: 3

ATTR: ignore
ATTRID: 19
ATTRHDRNAME: AO_INTERFACE_IGNORE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: Ignore
ATTRVIZ: 5
ATTRDESC:: eod
Indicates that the server should ignore this interface.
You can use this property to temporarily disable a
specific interface in a list of interfaces.
eod

ATTR: dhcp-failover-port
ATTRID: 20
ATTRHDRNAME: AO_INTERFACE_FAILOVER_PORT
ATTRTYPE: AT_INT
ATTRMCDPATH: DHCPFailoverPort
ATTRDEFVAL: 647
ATTRFEAT: type == DHCP
ATTRVIZ: 1
ATTRDESC:: eod
Deprecated in favor of attributes on the DHCP server object.
eod

ATTR: dhcp-failover-remote-port
ATTRID: 21
ATTRHDRNAME: AO_INTERFACE_FAILOVER_REMOTE_PORT
ATTRTYPE: AT_INT
ATTRMCDPATH: DHCPFailoverRemotePort
ATTRFEAT: type == DHCP
ATTRVIZ: 1
ATTRDESC:: eod
Deprecated in favor of attributes on the DHCP server object.
eod


CLASS: DbConfig
CLASSROOT: DBCONFIG
CLASSID: 53
CLASSVIZ: 3
CLASSDESC:: eod
db config object: contains config information for a server's
private database - probably a sleepycat database.
eod

ATTR: flags
ATTRID: 1
ATTRHDRNAME: AO_DBCONFIG_FLAGS
ATTRTYPE: AT_INT
ATTRVIZ: 3
ATTRDESC:: eod
Misc. flags.
eod

ATTR: server-name
ATTRID: 2
ATTRHDRNAME: AO_DBCONFIG_SERVER_NAME
ATTRTYPE: AT_STRING
ATTRVIZ: 3
ATTRDESC:: eod
A printable string naming the server that created this config.
record.
eod

ATTR: version
ATTRID: 3
ATTRHDRNAME: AO_DBCONFIG_VERSION
ATTRTYPE: AT_VERSION
ATTRVIZ: 3
ATTRDESC:: eod
The version of this config record. Interpret this as two bytes of
major version (high), and two bytes of minor version (low).
eod

ATTR: server-version
ATTRID: 4
ATTRHDRNAME: AO_DBCONFIG_SERVER_VERSION
ATTRTYPE: AT_INT
ATTRVIZ: 3
ATTRDESC:: eod
The 'compatibility' version of the server that created this
record; this comes from product_get_compatibility_version().
eod

ATTR: product-version
ATTRID: 5
ATTRHDRNAME: AO_DBCONFIG_PRODUCT_VERSION
ATTRTYPE: AT_STRING
ATTRVIZ: 3
ATTRDESC:: eod
A printable string form of the product version that created
this record; this comes from product_get_vers_string().
eod

ATTR: build
ATTRID: 6
ATTRHDRNAME: AO_DBCONFIG_BUILD
ATTRTYPE: AT_STRING
ATTRVIZ: 3
ATTRDESC:: eod
A printable string the describes the build date and source; this
comes from program_get_build_string().
eod

ATTR: created
ATTRID: 7
ATTRHDRNAME: AO_DBCONFIG_CREATED
ATTRTYPE: AT_DATE
ATTRVIZ: 3
ATTRDESC:: eod
eod

ATTR: modified
ATTRID: 8
ATTRHDRNAME: AO_DBCONFIG_MODIFIED
ATTRTYPE: AT_DATE
ATTRVIZ: 3
ATTRDESC:: eod
eod

ATTR: dbsn
ATTRID: 10
ATTRHDRNAME: AO_DBCONFIG_DBSN
ATTRTYPE: AT_INT
ATTRVIZ: 5
ATTRDESC:: eod
eod

ATTR: next-oid
ATTRID: 11
ATTRHDRNAME: AO_DBCONFIG_NEXT_OID
ATTRTYPE: AT_INT
ATTRVIZ: 5
ATTRDESC:: eod
eod

ATTR: indexes
ATTRID: 12
ATTRHDRNAME: AO_DBCONFIG_INDEXES
ATTRTYPE: AT_NLIST(AT_PACK(BSB))
# AT_PACK = 36
ATTRVAL: 36
ATTRVIZ: 5
ATTRDESC:: eod
The array of flags:8, classid:16, attrid: 8 describing the
indexes that this database provides.
eod

ATTR: db-version
ATTRID: 13
ATTRHDRNAME: AO_DBCONFIG_DB_VERSION
ATTRTYPE: AT_STRING
ATTRVIZ: 3
ATTRDESC:: eod
A printable string the describes the database version
comes from db_version().
eod

ATTR: next-taskid
ATTRID: 14
ATTRTYPE: AT_INT
ATTRVIZ: 5
ATTRDESC:: eod
eod


#
# end of DBCONFIG class
#

CLASS: Key
CLASSROOT: KEY
CLASSID: 54
CLASSNAME: 1

ATTR: name
ATTRHDRNAME: AO_KEY_NAME
ATTRID: 1
ATTRTYPE: AT_DNSNAME
ATTRFLAGS: AF_UNIQUE, AF_REQUIRED
ATTRVIZ: 3
ATTRDESC:: eod
The name of this key.
eod

ATTR: secret
ATTRHDRNAME: AO_KEY_SECRET
ATTRID: 2
ATTRFLAGS: AF_REQUIRED
ATTRTYPE: AT_KEY
ATTRDESC:: eod
A base64 encoded string used for transaction authentication.
eod

ATTR: algorithm
ATTRHDRNAME: AO_KEY_ALGORITHM
ATTRID: 3
ATTRFLAGS: AF_REQUIRED
ATTRTYPE: AT_ENUMSTR(hmac-md5)
ATTRDEFVAL: hmac-md5
ATTRDESC:: eod
The algorithm that this key is used with.  Currently we only support
hmac-md5.
eod

ATTR: security-type
ATTRHDRNAME: AO_KEY_SECURITY_TYPE
ATTRID: 4
ATTRFLAGS: AF_REQUIRED
ATTRTYPE: AT_ENUMSTR(TSIG)
ATTRDEFVAL: TSIG
ATTRDESC:: eod
The type of security that this key is going to be used for.  Currently
we only support TSIG keys.
eod

ATTR: time-skew
ATTRHDRNAME: AO_KEY_TIME_SKEW
ATTRID: 5
ATTRTYPE: AT_RANGETIME(1-3600)
ATTRDEFVAL: 300
ATTRDESC:: eod
The time stamp fudge factor (amount that the time values can differ).
eod

ATTR: id
ATTRID: 6
ATTRTYPE: AT_INT
ATTRVIZ: 3
ATTRDESC:: eod
An integer id for the key.
eod

CLASS: Expression
CLASSID: 55
CLASSDESC:: eod
A parse node object for an expression.  This expression can have an
arbitrarily deep tree of sub-expressions, stored in its args list.
As a hack, perhaps necessary, to support literal values, you can
also store a literal typed value in the val and type attributes
eod

ATTR: op
ATTRTYPE: AT_STRING
ATTRID: 1
ATTRDESC:: eod
The operation for this node.  Currently an unrestricted string,
but should probably become an enum as we pin down the accepted
operators in the expression language.
eod

ATTR: args
ATTRTYPE: AT_NLIST(AT_OBJ(Expression))
# 1<<16 | 55
ATTRVAL: 65591
ATTRID: 2
ATTRDESC:: eod
The list of sub-expressions that this operation is applied to.  These
expressions will be evaluated, and their values will
eod

ATTR: arg-signature
ATTRTYPE: AT_STRING
ATTRID: 3
ATTRVIZ: 1
ATTRDESC:: eod
The optional type signature for the argument list.  Not yet defined,
and not yet sure that a string is the best approach, but an early
evaluator implementation could use a string such as 'iii' to eval
and validate the args list as having exactly three integer values.
eod

ATTR: val
ATTRTYPE: AT_BLOB
ATTRID: 4
ATTRDESC:: eod
The literal value, in raw form, for this expression.  Currently
used for literal, var and funcall nodes, and should only contain
constant values.  The var and funcall nodes store the variable or
function name (or index) in this value.
eod

ATTR: type
ATTRTYPE: AT_INT
ATTRID: 5
ATTRDESC:: eod
The type of the literal value, encoded as an ao_typeid_t.  Use
ScpAttrType to map from string to integer type ids.
eod

ATTR: error-val
ATTRTYPE: AT_BLOB
ATTRID: 6
ATTRDESC:: eod
The literal value to be used if evaluation throws an exception.
eod

ATTR: error-type
ATTRTYPE: AT_INT
ATTRID: 7
ATTRDESC:: eod
The type of the literal value to be used in the face of errors.
eod

CLASS: ACL
CLASSID: 56
CLASSNAME: 1
CLASSDESC:: eod
A DNS Access Control List (maybe should be DNSACL)
eod

ATTR: name
ATTRTYPE: AT_STRING
ATTRID: 1
ATTRFLAGS: AF_UNIQUE, AF_REQUIRED
ATTRVIZ: 3
ATTRDESC:: eod
The name of the ACL
eod

ATTR: match-list
ATTRTYPE: AT_AMELST
ATTRID: 2
ATTRDESC:: eod
The comma delimited list of address match elements which can 
include one or more of the following; (tsig key, ip address, 
network address, acl reference). When specifying more than 
one element in the match-list, double quotes should be placed 
around the list of elements (i.e. "192.168.2.1, key mykey"). 
For TSIG keys, the keyword "key " must be specified before the 
key name (i.e. "key keyname"). For network addresses, use the 
ip/mask notation (i.e. "192.168/16"). You may also negate any 
of the acl elements by placing an exclamation point in front 
of the element (i.e. "!192.168.2.1, !key mykey"). There are 
also reserved words that you can specify as element in the 
match-list that have special meaning. These reserved words 
are as follows; (any, none, localhost and localnets).


Note: You are allowed to create a name reference to an acl 
(in the match-list) prior to actually creating the acl. But 
the acl must exist before starting or reloading the DNS server. 
If the match-list contains a reference to a non-existent acl
and the acl is used on the DNS server object or a zone object, 
the DNS server will not start up.

eod

CLASS: AddressMatchElement
CLASSROOT: AME
CLASSID: 57
CLASSDESC:: eod
A DNS Address Match element, stored in an ACL.  See the BIND 9
documentation for acl and address_match_element.
eod

ATTR: type
ATTRID: 1
ATTRTYPE: AT_ENUMINT(addr=3, net=4, acl=5, key=6, list=7)
ATTRDESC:: eod
The type of this address match term (element).
  addr - match an explicit IP address
  net -  match any address in the given subnet
  acl -  use a named ACL for further matching
  key -  require the named key
  list - use an embedded list of address match terms (elements)
eod

ATTR: negated
ATTRID: 2
ATTRTYPE: AT_BOOL
ATTRDEFVAL: false
ATTRDESC:: eod
Is this term negated?
eod

ATTR: addr
ATTRID: 3
ATTRTYPE: AT_IPADDR
ATTRDESC:: eod
If the type is 'addr', the actual IP address to use for the match.
eod

ATTR: net
ATTRID: 4
ATTRTYPE: AT_IPNET
ATTRDESC:: eod
If the type is 'net', the subnet to use for the match.
eod

ATTR: acl
ATTRID: 5
ATTRTYPE: AT_NAMEREF(ACL)
ATTRVAL: 56
ATTRDESC:: eod
If the type is 'acl', the name of the ACL to use for
further matching.
eod

ATTR: key
ATTRID: 6
ATTRTYPE: AT_NAMEREF(Key)
ATTRVAL: 54
ATTRDESC:: eod
If the type is 'key', the name of the TSIG key to require.
eod

ATTR: list
ATTRID: 7
ATTRTYPE: AT_AMELST
ATTRDESC:: eod
If the type is 'list', the nested list of address match elements.
eod

CLASS: License
CLASSID: 58
CLASSDESC:: eod
This is the license information object for the licenses
entered into CNR.
eod

ATTR: key
ATTRID: 1
ATTRTYPE: AT_STRING
ATTRVIZ: 5
ATTRDESC:: eod
The actual key string.
eod

ATTR: type
ATTRID: 2
ATTRTYPE: AT_STRING
ATTRVIZ: 5
ATTRDESC:: eod
This is the description of what kind of key it is - be it one that
was generated by CNR's key generator or another system.  Right
now the only supported type is a key generated by CNR.
eod

ATTR: key-type
ATTRID: 3
ATTRTYPE: AT_ENUMINT(local-cluster=1, central-cluster=2, addrspace=3, router=4, node-count=5)
ATTRVIZ: 5
ATTRDESC:: eod
This is the type of access the key is for. The types are: 
local-cluster, central-cluster, addrspace, router, and node-count. 
eod

ATTR: expiration
ATTRID: 4
ATTRTYPE: AT_DATE
ATTRVIZ: 5
ATTRDESC:: eod
The date the key expires.
eod

ATTR: node-count
ATTRID: 5
ATTRTYPE: AT_RANGEINT(0-2147483647)
ATTRVIZ: 5
ATTRDESC:: eod
The node count associated with the key.
eod

ATTR: eval
ATTRID: 6
ATTRTYPE: AT_BOOL
ATTRVIZ: 5
ATTRDESC:: eod
Used to indicate that the key is an evaluation key.
eod

ATTR: comments 
ATTRID: 7 
ATTRTYPE: AT_NLIST(AT_STRING) 
# AT_STRING = 5
ATTRVAL: 5
ATTRVIZ: 5 
ATTRDESC:: eod
This attribute contains a list of strings that were comments in
the product.licenses file. These are maintained so that they can
be written to the file, when the licenses are put back into it. 
eod

ATTR: valid
ATTRID: 8
ATTRTYPE: AT_BOOL
ATTRVIZ: 5
ATTRDESC:: eod
Used to indicate that the license object is valid.
eod

#
# DNS 'foreign' server object
#

CLASS: ForeignServer
CLASSROOT: DNS_FS
CLASSID: 100
CLASSVIZ: 3
CLASSNAMEDESC:: eod
The name of the ForeignServer object encodes its IP address and netmask,
and is of the form <ipaddr>[/<bits>].  Although the ForeignServer object has
addr and mask attributes, the value of these attributes is directly linked
to the name of the object, and changing them will rename the object.

The DNS server uses the name, rather than the addr and mask attributes to
determine the IP address and netmask.
eod
CLASSVIZ: 5
CLASSNAME: 5
CLASSDESC:: eod
The information about a foreign (remote) DNS server, either 
exactly by address, or more generally by subnet.

Validation: Disallow multiple entries whose addresses differ
only in non-significant (masked-off) bits.
eod

ATTR: multirec
ATTRID: 1
ATTRHDRNAME: AO_DNS_FS_MULTIREC
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_REQUIRED
ATTRDEFVAL: false
ATTRMCDPATH: axfr-multirec-flag
ATTRVIZ: 5
ATTRDESC:: eod
Indicates whether or not a foreign server can be sent zone
transfers (AXFR) with multiple records in one TCP "packet." Older
DNS servers will crash when receiving such transfers, despite
being allowed by the protocol specification.
eod

ATTR: ixfr
ATTRID: 2
ATTRHDRNAME: AO_DNS_FS_DOIXFR
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_REQUIRED
ATTRDEFVAL: false
ATTRMCDPATH: do-ixfr-flag
ATTRVIZ: 5
ATTRDESC:: eod
Indicates whether or not a foreign server supports incremental
transfer and should be queried for incremental (IXFR) before full
(AXFR) when asking for zone transfers. Although unwittingly setting
this to true is generally harmless, doing so may result in
additional transactions to accomplish a zone transfer.
eod

ATTR: addr
ATTRID: 3
ATTRHDRNAME: AO_DNS_FS_ADDRESS
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: address
ATTRVIZ: 3
ATTRDESC:: eod
The address of the server or network to which this information
applies.
eod

ATTR: mask
ATTRID: 4
ATTRHDRNAME: AO_DNS_FS_MASK
ATTRTYPE: AT_RANGEINT(0-32)
ATTRMCDPATH: mask
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the number of bits in the addr
attribute that are significant.
Validation: [0,32]
eod

ATTR: name
ATTRID: 5
ATTRTYPE: AT_STRING
ATTRVIZ: 2
ATTRFLAGS: AF_IMMUTABLE
ATTRDESC:: eod
The string form of the address and mask, which is used as
the name of the object containing the remote configuration.
eod

ATTR: key
ATTRID: 6
ATTRTYPE: AT_DNSNAME
ATTRVIZ: 5
ATTRDESC:: eod
Specifies which key to use when communicating with the remote DNS 
server. 
eod


#
# THE SerialMapping class ONLY LIVES IN "STATE".  HOW ABOUT AN AF_STATE FLAG?
#
CLASS: SerialMapping
CLASSROOT: DNS_SERMAP
CLASSID: 101
CLASSNAMEDESC:: eod
The names of these objects encode the serial number they represent in the form
SN%08X.
eod
CLASSVIZ: 1
CLASSFLAGS: AF_IMMUTABLE
CLASSDESC:: eod
A mapping of serial number to RR Table generations numbers and
timestamps.  Maintained by the server in MCD state area.
eod

ATTR: serial-time
ATTRID: 1
ATTRHDRNAME: AO_DNS_SERMAP_TIME
ATTRTYPE: AT_DATE
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: serial-time
ATTRDESC:: eod
The date and time when this serial number was realized.
eod

ATTR: min-config-gen
ATTRID: 2
ATTRHDRNAME: AO_DNS_SERMAP_MINCONFGEN
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: min-config-gen
ATTRDESC:: eod
Lowest generation number of MCD Config RR table holding changes 
associated with this serial number.
eod

ATTR: max-config-gen
ATTRID: 3
ATTRHDRNAME: AO_DNS_SERMAP_MAXCONFGEN
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: max-config-gen
ATTRDESC:: eod
Highest generation number of MCD Config RR table holding changes 
associated with this serial number.
eod

ATTR: min-state-gen
ATTRID: 4
ATTRHDRNAME: AO_DNS_SERMAP_MINSTATEGEN
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: min-state-gen
ATTRDESC:: eod
Lowest generation number of MCD State RR table holding changes 
associated with this serial number.
eod

ATTR: max-state-gen
ATTRID: 5
ATTRHDRNAME: AO_DNS_SERMAP_MAXSTATEGEN
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: max-state-gen
ATTRDESC:: eod
Highest generation number of MCD State RR table holding changes
associated with this serial number.
eod

ATTR: serial-change-count
ATTRID: 6
ATTRHDRNAME: AO_DNS_SERMAP_CHANGECNT
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: serial-change-count
ATTRDESC:: eod
Number of change records between this serial number and the 
previous one.
eod


CLASS: ResourceLock
CLASSROOT: RESOURCELOCK
CLASSID: 102
CLASSVIZ: 3
CLASSNAME: 1
CLASSDESC:: eod
Used to create a lock, and store it in MCD,
on a specified resource.
eod

ATTR: username
ATTRID: 1
ATTRHDRNAME: AO_RESOURCELOCK_USERNAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: username
ATTRVIZ: 5
ATTRDESC:: eod
The ID of the originator of the lock.
eod

ATTR: hostname
ATTRID: 2
ATTRHDRNAME: AO_RESOURCELOCK_HOSTNAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: hostname
ATTRVIZ: 5
ATTRDESC:: eod
The Host ID of the originator of the lock.
eod

ATTR: pid
ATTRID: 3
ATTRHDRNAME: AO_RESOURCELOCK_PID
ATTRTYPE: AT_INT
ATTRMCDPATH: pid
ATTRVIZ: 5
ATTRDESC:: eod
The Process ID of the originator of the lock.
eod

ATTR: role
ATTRID: 4
ATTRHDRNAME: AO_RESOURCELOCK_ROLE
ATTRTYPE: AT_INT
ATTRMCDPATH: role
ATTRVIZ: 5
ATTRDESC:: eod
The Administrative Title of the originator of the lock.
For example, RootAdmin or WebUI Admin.
eod

ATTR: timestamp
ATTRID: 5
ATTRHDRNAME: AO_RESOURCELOCK_TIMESTAMP
ATTRTYPE: AT_INT
ATTRMCDPATH: timestamp
ATTRVIZ: 5
ATTRDESC:: eod
The time at which the lock was created.
eod

# CLASSID RANGE SCP Message classes 300 - 500
#
# older version (CNR 5.0) SCP Protocol Message Classes
#
#

CLASS: SCPMessage
CLASSROOT: SCPMESSAGE
CLASSID: 300
CLASSNAME: 3
CLASSVIZ: 0
CLASSDESC:: eod
The SCPMessage class is used to describe messages that are sent
between processes which are using the CNR Server Control
Protocol. This is the generic message class.

This class is no longer used.  The Message(6) class is used
to describe the current SCP messages and the ScpMessageDesc(4)
class is used to describe the type of a specific message.
eod

ATTR: msgid
ATTRID: 1
ATTRHDRNAME: AO_SCPMESSAGE_MSGID
ATTRTYPE: AT_INT
ATTRMCDPATH: msgid

ATTR: type
ATTRID: 2
ATTRHDRNAME: AO_SCPMESSAGE_TYPE
ATTRTYPE: AT_ENUMINT(none=0, request=1, response=2, error=10)
ATTRMCDPATH: type
ATTRFLAGS: AF_PRINT_ALT

ATTR: name
ATTRID: 3
ATTRHDRNAME: AO_SCPMESSAGE_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name

ATTR: sequence
ATTRID: 4
ATTRHDRNAME: AO_SCPMESSAGE_SEQUENCE
ATTRTYPE: AT_INT
ATTRMCDPATH: sequence

ATTR: strval
ATTRID: 5
ATTRHDRNAME: AO_SCPMESSAGE_STRVAL
ATTRTYPE: AT_STRING
ATTRMCDPATH: strval

ATTR: intval
ATTRID: 6
ATTRHDRNAME: AO_SCPMESSAGE_INTVAL
ATTRTYPE: AT_INT
ATTRMCDPATH: intval

ATTR: oidval
ATTRID: 7
ATTRHDRNAME: AO_SCPMESSAGE_OIDVAL
ATTRTYPE: AT_OID
ATTRMCDPATH: oidval

ATTR: status-str
ATTRID: 8
ATTRHDRNAME: AO_SCPMESSAGE_STATUS_STRING
ATTRTYPE: AT_STRING
ATTRMCDPATH: status-str

ATTR: status
ATTRID: 9
ATTRHDRNAME: AO_SCPMESSAGE_STATUS
ATTRTYPE: AT_INT
ATTRMCDPATH: status

ATTR: xid
ATTRID: 10
ATTRHDRNAME: AO_SCPMESSAGE_XID
ATTRTYPE: AT_INT
ATTRMCDPATH: xid

ATTR: strdict
ATTRID: 11
ATTRHDRNAME: AO_SCPMESSAGE_STRDICT
ATTRTYPE: AT_DICT(AT_STRING)
ATTRMCDPATH: strdict

ATTR: ipval
ATTRID: 12
ATTRHDRNAME: AO_SCPMESSAGE_IPVAL
ATTRTYPE: AT_IPADDR

CLASS: SCPSESSION
CLASSID: 303
CLASSROOT: SCPSESSION
CLASSVIZ: 1

#
# the role of this end of a connection (client or server)
#
ATTR: role
ATTRID: 1
ATTRHDRNAME: AO_SCPSESSION_ROLE
ATTRTYPE: AT_INT
ATTRMCDPATH: role
ATTRDESC:: eod
eod

#
# the security method in use
#
ATTR: security
ATTRID: 2
ATTRHDRNAME: AO_SCPSESSION_SECURITY
ATTRTYPE: AT_INT
ATTRMCDPATH: security
ATTRDESC:: eod
eod

#
# the status of this session
#
ATTR: status
ATTRID: 3
ATTRHDRNAME: AO_SCPSESSION_STATUS
ATTRTYPE: AT_INT
ATTRMCDPATH: status
ATTRDESC:: eod
eod

#
# the access that's been granted to the client
#
ATTR: access
ATTRID: 4
ATTRHDRNAME: AO_SCPSESSION_ACCESS
ATTRTYPE: AT_INT
ATTRMCDPATH: access
ATTRDESC:: eod
eod

#
# the on-the-wire format that's being used
#
ATTR: format
ATTRID: 5
ATTRHDRNAME: AO_SCPSESSION_FORMAT
ATTRTYPE: AT_INT
ATTRMCDPATH: format
ATTRDESC:: eod
eod

#
# the server's version
#
ATTR: server-version
ATTRID: 6
ATTRHDRNAME: AO_SCPSESSION_SERVER_VERSION
ATTRTYPE: AT_INT
ATTRMCDPATH: server-version
ATTRDESC:: eod
eod

#
# the client's version
#
ATTR: client-version
ATTRID: 7
ATTRHDRNAME: AO_SCPSESSION_CLIENT_VERSION
ATTRTYPE: AT_INT
ATTRMCDPATH: client-version
ATTRDESC:: eod
eod

#
# the server's id string
#
ATTR: server-id
ATTRID: 8
ATTRHDRNAME: AO_SCPSESSION_SERVER_ID
ATTRTYPE: AT_STRING
ATTRMCDPATH: server-id
ATTRDESC:: eod
eod

#
# the client's id string
#
ATTR: client-id
ATTRID: 9
ATTRHDRNAME: AO_SCPSESSION_CLIENT_ID
ATTRTYPE: AT_STRING
ATTRMCDPATH: client-id
ATTRDESC:: eod
eod

#
# the client user-name
#
ATTR: user-name
ATTRID: 10
ATTRHDRNAME: AO_SCPSESSION_USER_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: user-name
ATTRDESC:: eod
eod

#
# the hostname of the other end of the connection
#
ATTR: peer-name
ATTRID: 11
ATTRHDRNAME: AO_SCPSESSION_PEER_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: peer-name
ATTRDESC:: eod
eod

#
# the IP address of the other end of the connection
#
ATTR: peer-address
ATTRID: 12
ATTRHDRNAME: AO_SCPSESSION_PEER_ADDRESS
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: peer-address

#
# CLASSID RANGE Common database classes 1000 - 1099
#

CLASS: Cluster
CLASSROOT: CLUSTER
CLASSID: 1000
CLASSNAME: 1
CLASSVIZ: 3
CLASSDESC:: eod
The cluster object for pre-6.0 user interfaces.  The
description of a cluster has moved to the CCMCluster and
CCMServer objects which are used by the 6.0 and later
user interfaces and management clients.
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_CLUSTER_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRDESC:: eod
The name of this cluster.
eod

CLASS: Admin
CLASSROOT: ADMIN
CLASSID: 1001
CLASSNAME: 1
CLASSNAMEDESC:: eod
The name of the Admin object is the name of the administrator.
eod
CLASSVIZ: 5
CLASSDESC:: eod
An administrator for the cluster
eod

ATTR: name
ATTRID: 1
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED, AF_UNIQUE
ATTRMCDPATH: name
ATTRVIZ: 3
ATTRDESC:: eod
The name of this administrator.
eod

ATTR: password
ATTRID: 2
ATTRTYPE: AT_CLEARTEXT
ATTRMCDPATH: password
ATTRVIZ: 5
ATTRVAL: 6
ATTRDESC:: eod
The password for this administrator.
eod

ATTR: groups
ATTRID: 3
ATTRTYPE: AT_NLIST(AT_STRING)
# AT_STRING = 5
ATTRVAL: 5
ATTRDESC:: eod
The list of group names that this administrator belongs to.
This is a string rather than a name reference because the
groups may actually be managed by a separate system.
eod

ATTR: superuser
ATTRID: 4
ATTRTYPE: AT_BOOL
ATTRDESC:: eod
Is this administrator a super-user.  This is a bit
of a violation of the separation of authentication
and authorization, but it seems worthwhile.
eod

ATTR: nrcmd-flags
ATTRID: 5
ATTRTYPE: AT_ENUMINT(limited=1, full=2)
ATTRFLAGS: AF_PRINT_ALT
ATTRDESC:: eod
For conversion from nrcmd-based admin access in pre-6.0
releases.  What sort of nrcmd access does this administrator
have.  This value will be mapped into the pre-defined 
local cluster administrative roles.
eod

ATTR: password-secret
ATTRID: 6
ATTRTYPE: AT_SECRET
ATTRVIZ: 3
ATTRVAL: 2
ATTRDESC:: eod
The secret object the contains the password for this admin.
eod

# CLASSID 1002 - Trap

CLASS: Trap
CLASSROOT: TRAP
CLASSID: 1002
CLASSNAME: 1
CLASSVIZ: 5
CLASSDESC:: eod
The SNMP trap configuration object
eod

# Trap ATTRID 1-10: standard
ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_TRAP_NAME
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: trap
ATTRMCDPATH: Name
ATTRVIZ: 3
ATTRDESC:: eod
The name of this trap object
eod

# Trap ATTRID 11-50: features (mostly flags for individual trap types)
ATTR: server-start
ATTRID: 11
ATTRHDRNAME: AO_TRAP_SERVERSTART
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: ServerStart
ATTRVIZ: 5
ATTRDESC:: eod
Send trap on start of an NR server
eod

ATTR: server-stop
ATTRID: 12
ATTRHDRNAME: AO_TRAP_SERVERSTOP
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: ServerStop
ATTRVIZ: 5
ATTRDESC:: eod
Send trap on normal stop of an NR server
eod

ATTR: free-address-low
ATTRID: 13
ATTRHDRNAME: AO_TRAP_FREEADDRESSLOW
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: FreeAddressLow
ATTRVIZ: 5
ATTRDESC:: eod
Send trap on FreeAddress below low threshold
eod

ATTR: free-address-high
ATTRID: 14
ATTRHDRNAME: AO_TRAP_FREEADDRESSHIGH
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: FreeAddressHigh
ATTRVIZ: 5
ATTRDESC:: eod
Send trap on FreeAddress above high threshold
eod

ATTR: dns-queue-too-big
ATTRID: 15
ATTRHDRNAME: AO_TRAP_DNSQUEUETOOBIG
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: DnsQueueTooBig
ATTRVIZ: 5
ATTRDESC:: eod
Send trap when DHCP's queue of DNS messages
becomes too large.
eod

ATTR: other-server-not-responding
ATTRID: 16
ATTRHDRNAME: AO_TRAP_OTHERSERVERNOTRESPONDING
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: OtherServerNotResponding
ATTRVIZ: 5
ATTRDESC:: eod
Send trap on another server not responding
eod

ATTR: other-server-responding
ATTRID: 17
ATTRHDRNAME: AO_TRAP_OTHERSERVERRESPONDING
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: OtherServerResponding
ATTRVIZ: 5
ATTRDESC:: eod
Send trap on another server responding again
eod

ATTR: duplicate-address
ATTRID: 18
ATTRHDRNAME: AO_TRAP_DUPLICATEADDRESS
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: DuplicateAddress
ATTRVIZ: 5
ATTRDESC:: eod
Send trap on duplicate IP address detected
eod

ATTR: address-conflict
ATTRID: 19
ATTRHDRNAME: AO_TRAP_ADDRESSCONFLICT
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: AddressConflict
ATTRVIZ: 5
ATTRDESC:: eod
Send trap on duplicate IP address detected
eod

ATTR: dhcp-failover-config-mismatch
ATTRID: 20
ATTRHDRNAME: AO_TRAP_DHCPFAILOVERCONFIGMISMATCH
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: DhcpFailoverConfigMismatch
ATTRVIZ: 5
ATTRDESC:: eod
Send trap when DHCP detects a configuration
mismatch with its failover partner.
eod

# Trap ATTRID 51-99: properties
ATTR: free-address-low-threshold
ATTRID: 51
ATTRHDRNAME: AO_TRAP_FREEADDRESSLOWTHRESHOLD
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 20%
ATTRMCDPATH: FreeAddressLowThreshold
ATTRVIZ: 5
ATTRDESC:: eod
a number, or (if terminated with a %) percentage, of addresses free
at which point the free-address-low trap is generated.
eod

ATTR: free-address-high-threshold
ATTRID: 52
ATTRHDRNAME: AO_TRAP_FREEADDRESSHIGHTHRESHOLD
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 20%
ATTRMCDPATH: FreeAddressHighThreshold
ATTRVIZ: 5
ATTRDESC:: eod
a number, or (if terminated with a %) percentage, of addresses free
at which point a free-address-high trap is generated and the
free-address trap is re-enabled.
eod

# CLASSID 1003 - TrapRecipient

CLASS: TrapRecipient
CLASSROOT: TRAPRECIPIENT
CLASSID: 1003
CLASSNAME: 1
CLASSVIZ: 3
CLASSDESC:: eod
The SNMP trap recipient configuration object
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_TRAPRECIPIENT_NAME
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_UNIQUE
ATTRMCDPATH: Name
ATTRVIZ: 3
ATTRDESC:: eod
The name of this trap recipient
eod

ATTR: ip-addr
ATTRID: 2
ATTRHDRNAME: AO_TRAPRECIPIENT_IPADDR
ATTRTYPE: AT_STRING
ATTRMCDPATH: IPAddr
ATTRVIZ: 5
ATTRDESC:: eod
The IP address of this trap recipient (dotted decimal or name)
eod

ATTR: community
ATTRID: 3
ATTRHDRNAME: AO_TRAPRECIPIENT_COMMUNITY
ATTRTYPE: AT_STRING
ATTRMCDPATH: Community
ATTRVIZ: 5
ATTRDESC:: eod
The SNMP community string of this trap recipient
eod

ATTR: port-number
ATTRID: 4
ATTRHDRNAME: AO_TRAPRECIPIENT_PORT
ATTRTYPE: AT_INT
ATTRMCDPATH: PortNumber
ATTRDEFVAL: 162
ATTRVIZ: 5
ATTRDESC:: eod
The optional IP port number of this trap recipient
eod

ATTR: agent-addr
ATTRID: 5
ATTRTYPE: AT_IPADDR
ATTRVIZ: 5
ATTRDESC:: eod
An IP address to use as the source agent-address in traps sent to
this recipient.
eod

################################################################
# CLASSID RANGE DHCP classes 1100 - 1199
#
# D H C P Server
# DHCP SERVER
#
################################################################

CLASS: DHCPServer
CLASSROOT: DHCPSERVER
CLASSID: 1100
CLASSNAME: 1
CLASSNAMEDESC:: eod
In Network Registrar, there is only one DHCP server per cluster,
and DHCP servers are not referenced by name.
eod
CLASSVIZ: 5
CLASSDESC:: eod
The DHCP server
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_DHCPSERVER_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRVIZ: 3
ATTRDESC:: eod
The name of this server.
eod
# from mcdconfig

ATTR: initial-background-timer-sleep-time
ATTRID: 3
ATTRHDRNAME: AO_DHCPSERVER_INITIALBACKGROUNDTIMERSLEEPTIME
ATTRTYPE: AT_INT
ATTRMCDPATH: InitialBackgroundTimerSleepTime
ATTRDEFVAL: 5
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the length of time the background timer thread will sleep at
server startup time.
eod

ATTR: max-dhcp-requests
ATTRID: 4
ATTRHDRNAME: AO_DHCPSERVER_MAXDHCPREQ
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 500
ATTRMCDPATH: MaximumNumberOfDhcpRequests
ATTRVIZ: 5
ATTRDESC:: eod
Controls the number of buffers that the DHCP server allocates
for receiving client requests.
eod

ATTR: max-dhcp-responses
ATTRID: 5
ATTRHDRNAME: AO_DHCPSERVER_MAXDHCPRESP
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 1000
ATTRMCDPATH: MaximumNumberOfDhcpResponses
ATTRVIZ: 5
ATTRDESC:: eod
Controls the number of buffers that the DHCP server allocates
for responding to client requests.
eod

ATTR: max-ping-packets
ATTRID: 6
ATTRHDRNAME: AO_DHCPSERVER_MAXIMUMNUMBEROFPINGPACKETS
ATTRTYPE: AT_INT
ATTRMCDPATH: MaximumNumberOfPingPackets
ATTRVIZ: 5
ATTRDEFVAL: 500
ATTRDESC:: eod
The number of buffers the server will allocate for sending and
receiving ICMP ping messages. See the scope's 'ping-clients'
command.
eod

ATTR: min-client-packet-size
ATTRID: 7
ATTRHDRNAME: AO_DHCPSERVER_MINIMUMCLIENTPACKETSIZE
ATTRTYPE: AT_INT
ATTRDEFVAL: 576
ATTRMCDPATH: MinimumClientPacketSize
ATTRVIZ: 3

ATTR: num-ping-threads
ATTRID: 8
ATTRHDRNAME: AO_DHCPSERVER_NUMBEROFPINGSERVERTHREADS
ATTRTYPE: AT_INT
ATTRMCDPATH: NumberOfPingServerThreads
ATTRVIZ: 1
DEPRECATED: 4.0

ATTR: old-states-to-keep
ATTRID: 9
ATTRHDRNAME: AO_DHCPSERVER_OLDSTATESTOKEEP
ATTRTYPE: AT_INT
ATTRMCDPATH: OldStatesToKeep
ATTRVIZ: 1

ATTR: ping-thread-heap-size
ATTRID: 10
ATTRHDRNAME: AO_DHCPSERVER_PINGSERVERTHREADHEAPSIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: PingServerThreadHeapSize
ATTRVIZ: 1
DEPRECATED: 4.0

ATTR: timer-thread-heap-size
ATTRID: 11
ATTRHDRNAME: AO_DHCPSERVER_TIMERQUEUETHREADHEAPSIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: TimerQueueThreadHeapSize
ATTRVIZ: 3
ATTRDESC:: eod
Controls the heap size that the DHCP server allocates for
threads servicing the timer queue.
eod

ATTR: udp-packet-size
ATTRID: 12
ATTRHDRNAME: AO_DHCPSERVER_UDPPACKETSIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: UDPPacketSize
ATTRDEFVAL: 1536
ATTRVIZ: 3
ATTRDESC:: eod
Controls the UDP packet size to be used by the server.
eod

ATTR: ping-queue-timeout-factor
ATTRID: 13
ATTRHDRNAME: AO_DHCPSERVER_PINGQUEUETIMEOUTFACTOR
ATTRTYPE: AT_INT
ATTRMCDPATH: PingQueueTimeoutFactor
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 2
ATTRVIZ: 3
ATTRDESC:: eod
(NT 3.51 only) The number of scope ping timeouts that the server
will wait for until it decides that an address is not in use.  In
each scope there is a ping timeout number, which is the number of
milliseconds that the ping subsystem waits for a response.
eod

ATTR: max-dns-packets
ATTRID: 14
ATTRHDRNAME: AO_DHCPSERVER_MAXIMUMNUMBEROFDNSPACKETS
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: MaximumNumberOfDnsPackets
ATTRDEFVAL: 500
ATTRVIZ: 5
ATTRDESC:: eod
Controls the number of the buffers that the DHCP server allocates for
sending dynamic updates to the DNS server.
eod

ATTR: dyndns-packet-size
ATTRID: 15
ATTRHDRNAME: AO_DHCPSERVER_DYNAMICDNSPACKETSIZE
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: DynamicDnsPacketSize
ATTRDEFVAL: 512
ATTRVIZ: 3
ATTRDESC:: eod
Controls the size of the packets that the DHCP server uses for
dynamic updates to a DNS server.  Do not change this value unless
instructed by Technical Support.
eod

ATTR: max-dns-retries
ATTRID: 16
ATTRHDRNAME: AO_DHCPSERVER_MAXIMUMDNSRETRIES
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: MaximumDnsRetries
ATTRDEFVAL: 3
ATTRVIZ: 5
ATTRDESC:: eod
Controls the number of times that the DHCP server will try to
send dynamic updates to a DNS server.
eod

ATTR: max-dns-renaming-retries
ATTRID: 17
ATTRHDRNAME: AO_DHCPSERVER_MAXIMUMDNSRENAMINGRETRIES
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: MaximumDnsRenamingRetries
ATTRDEFVAL: 3
ATTRVIZ: 5
ATTRDESC:: eod
Controls the number of times that the DHCP server can try to add
a host into DNS even if it detects that the host's name is already
present in DNS.  The DHCP server will attempt to modify the host
name in order to resolve a conflict on each failed update.
eod

ATTR: dns-timeout
ATTRID: 18
ATTRHDRNAME: AO_DHCPSERVER_DNSTIMEOUT
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: DnsTimeout
ATTRDEFVAL: 60000
ATTRVIZ: 5
ATTRDESC:: eod
Controls the number of milliseconds that the DHCP server will wait
for a response before retrying dynamic DNS requests.
eod

ATTR: max-dns-ttl
ATTRID: 19
ATTRHDRNAME: AO_DHCPSERVER_MAXIMUMDNSRECORDTTL
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: MaximumDnsRecordTTL
ATTRDEFVAL: 86400
ATTRVIZ: 5
ATTRDESC:: eod
Sets the time to live (TTL) ceiling, in seconds, for DNS records added
through dynamic updates.  When the DHCP server adds a DNS record,
it uses a TTL of the minimum of either this ceiling or one third the
lease time.
eod

ATTR: use-mac-address-to-host-table
ATTRID: 20
ATTRHDRNAME: AO_DHCPSERVER_MACADDRESSTOHOSTTABLE
ATTRTYPE: AT_BOOL
ATTRMCDPATH: MACAddressToHostTable
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 0
ATTRVIZ: 3

ATTR: one-shot-grace-interval
ATTRID: 21
ATTRHDRNAME: AO_DHCPSERVER_ONESHOTGRACEINTERVAL
ATTRTYPE: AT_INT
ATTRMCDPATH: OneShotGraceInterval
ATTRVIZ: 3
ATTRDESC:: eod
Sets the grace interval within which a client can come back with
a request for a one-shot lease.
eod

ATTR: mac-address-only
ATTRID: 22
ATTRHDRNAME: AO_DHCPSERVER_USEMACADDRESSONLY
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRMCDPATH: UseMACAddressOnly
ATTRDEFVAL: false
ATTRVIZ: 5
ATTRDESC:: eod
Causes the DHCP server to use the client's MAC address as the
only client identifier. The standard behavior, as specified in
RFC 2132, is to use the client ID option (if it is present) as
the unique client identifier. If you specify the mac-address-only
argument, the DHCP server ignores the client's ID and uses its
MAC address instead. You can use this argument to have a single,
consistent way of identifying all clients that use your DHCP server.
eod

ATTR: one-lease-per-client
ATTRID: 23
ATTRHDRNAME: AO_DHCPSERVER_ONELEASEPERCLIENT
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: OneLeasePerClient
ATTRVIZ: 5
ATTRDESC:: eod
Causes the DHCP server to release any other leases the client may
have had on this server. Since the default behavior for the Network
Registrar DHCP server is to store all the leases a client obtains,
this command ensures that only one lease is stored. A client might
obtain a number of leases if a user with a laptop traveled throughout
the building and requested leases at different locations on the
network.
eod

ATTR: client-class
ATTRID: 24
ATTRHDRNAME: AO_DHCPSERVER_CLIENTCLASSENABLED
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: ClientClassEnabled
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether or not the DHCP server uses the client and
client-class configuration objects to affect request processing.
eod

ATTR: import-mode
ATTRID: 25
ATTRHDRNAME: AO_DHCPSERVER_IMPORTMODE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: ImportMode
ATTRVIZ: 5
ATTRDESC:: eod
Causes the DHCP server to recognize only packets generated form the
import leases command and ignore all others. You can use this
property if you want to update your DHCP server and prevent clients
from receiving addresses during this period.
eod

ATTR: timeout-retry-delay
ATTRID: 26
ATTRHDRNAME: AO_DHCPSERVER_TIMEOUTRETRYDELAYPERIOD
ATTRTYPE: AT_TIME
ATTRMCDPATH: TimeoutRetryDelayPeriod
ATTRDEFVAL: 10
ATTRVIZ: 3
ATTRDESC:: eod
If a lease has timed out but no response buffers are available to
process it immediately, the lease will be re-queued for this number
of seconds.
eod

ATTR: log-settings
ATTRID: 27
ATTRHDRNAME: AO_DHCPSERVER_VERBOSELOGGING
ATTRTYPE: AT_FLAGSINT( default=1, incoming-packets=2, missing-options=3, incoming-packet-detail=4, outgoing-packet-detail=5, unknown-criteria=6, dns-update-detail=7, client-detail=8, client-criteria-processing=9, failover-detail=10, ldap-query-detail=11, ldap-update-detail=12, ldap-create-detail=13, leasequery=14, dropped-waiting-packets=15, no-success-messages=16, no-dropped-dhcp-packets=17, no-dropped-bootp-packets=18, no-failover-activity=19, activity-summary=20, no-invalid-packets=21, no-reduce-logging-when-busy=22, no-timeouts=23, minimal-config-info=24, no-failover-conflict=25 )
ATTRDEFVAL: default,incoming-packets,missing-options
ATTRMCDPATH: VerboseLogging
ATTRVIZ: 5
ATTRDESC:: eod
The DHCP server will log additional detail about the events listed
in the log-settings. The additional detail can be very helpful when
analyzing a problem, but can cause the log files to fill up quickly
(and therefore to turn over frequently, possibly losing important
information) if left enabled for a long period of time.
eod
VDESC::eod

The possible flags are:
  default
    The default gives a low level of logging in several parts of the
    DHCP server.  If you unconfigure the default, even this logging
    will not appear.

  missing-options
    This setting (on by default) will cause a message to be logged
    whenever an option requested by a DHCP client has not been
    configured in a policy and therefore cannot be supplied by the
    DHCP server.

  incoming-packets
    This setting (on by default) will cause a single line message to
    be logged for every incoming packet.  This is especially useful
    when initially configuring a DHCP server or a BOOTP relay, in that
    an immediate positive indication exists that the DHCP server is
    receiving packets.

  incoming-packet-detail
    This setting will cause the contents of every DHCP packet received
    by the DHCP server to be interpreted in a human readable way and
    printed in the log file.  This enables the built-in DHCP packet
    sniffer for input packets.  The log files will fill up (and turn
    over) very rapidly when this setting is enabled.  This setting
    also causes a significant performance impact on the DHCP server
    and should not be left enabled as a matter of course.

  outgoing-packet-detail
    This setting will cause the contents of every DHCP packet
    transmitted by the DHCP server to be interpreted in a human
    readable way and printed in the log file.  This enables the
    built-in DHCP packet sniffer for output packets.  The log files
    will fill up (and turn over) very rapidly when this setting is
    enabled.  This setting also causes a significant performance
    impact on the DHCP server and should not be left enabled as a
    matter of course.

  client-detail
    This setting will cause a single line to be logged at the
    conclusion of every client-class client lookup operation.  This
    line will show the composite of the data found for the client as
    well as the data that found in the client's client-class.  It is
    useful when setting up a client-class configuration and for
    debugging problems in client-class processing.

  client-criteria-processing
    This setting will cause a log message to be output whenever a
    scope is examined to find an available lease or whenver a scope is
    examined to determine if a lease is still acceptable for a client
    who already has one.  It can be very useful when configuring or
    debugging client-class scope criteria processing.  It causes
    moderate amount of information to be logged and should not be left
    enabled as a matter of course.

  unknown-criteria
    This setting will cause a single line log message to appear
    whenever a client entry is found which specifies a
    selection-criteria or selection-criteria-excluded which is not
    found in any scope appropriate for that client's current network
    location.

  dns-update-detail
    This setting causes the server to log a message as it sends each
    dns update and as it receives replies to update messages.

  ldap-query-detail
    This setting will cause log messages to appear whenever the dhcp
    server initiates a query to LDAP server, receives response
    and retrieves result or error messages.

  ldap-update-detail
    This setting will cause log messages to appear whenever the dhcp
    server initiates an update lease state to LDAP server, receives
    response and retrieves result or error messages.

  ldap-create-detail
    This setting will cause log messages to appear whenever the dhcp
    server initiates an lease state entry create to LDAP server,
    receives response and retrieves result or error messages.

  leasequery
    This setting will cause log messages to appear when leasequery
    packets are processed without internal errors and result in
    an ACK or a NAK.

  dropped-waiting-packets
    If the value of max-waiting-packets is non-zero packets may
    be dropped if the queue length for any IP address exceeds the
    value of max-waiting-packets.  If dropped-waiting-packets
    is set, the server will log a message whenever it drops a
    waiting packet from the queue for an IP address.

  no-success-messages
    This setting will cause the single line message that is
    normally logged for every successful outgoing DHCP response
    packet to not appear.  It affects logging only for successful
    outgoing DHCP response packets.

  no-dropped-dhcp-packets
    This setting will cause a single line message normally logged
    for every DHCP packet that is dropped due to DHCP
    configuration to not appear.  (See no-invalid-packets for
    messages associated with packets dropped because they are
    invalid.)

  no-dropped-bootp-packets
    This setting will cause the single line message normally
    logged for every BOOTP packet that is dropped to not appear.

  no-failover-activity
    This setting will cause normal activity and some warning
    messages logged for failover to not appear.  Serious error
    log messages will continue to appear independent of this
    log-setting.

  activity-summary
    This setting will cause a summary message to appear every 5
    minutes.  It is useful when many of the no-xxx log settings
    are enabled, to give some idea of the activity in the server
    without imposing the load required for a log message
    corresponding to each DHCP message.  The time period for
    these messages can be configured with the DHCP server
    property activity-summary-interval.

  no-invalid-packets
    This setting will cause a single line message normally logged
    for every DHCP packet that is dropped due being invalid to
    not appear.  (See no-dropped-dhcp-packets for messages
    associated with packets dropped due to DHCP server
    configuration.)

  no-reduce-logging-when-busy
    Normally, the DHCP server will reduce logging when it becomes
    very busy (i.e., when it has used over 2/3 of the available
    receive buffers (itself a configurable value)).  It will set
    no-success-messages, no-dropped-dhcp-packets,
    no-dropped-bootp-packets, no-failover-activity,
    no-invalid-packets, and clear everything else except
    activity-summary.  If no-reduce-logging-activity is set, then
    the server will not do this.  It will restore the previous
    settings when the server becomes unbusy (i.e., when it has
    used only 1/3 of the available receive buffers).

  no-timeouts
    This setting will cause messages associated with timeout
    of leases or offers not to appear in the log file.

  minimal-config-info
    This setting will reduce the number of configuration messages
    printed when the server starts or reloads.  In particular,
    it will not log a message for every scope.

  no-failover-conflict
    This setting will cause conflicts between failover partners
    to not be logged.

eod

ATTR: min-working-set-size
ATTRID: 28
ATTRHDRNAME: AO_DHCPSERVER_MINWORKINGSETSIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: MinWorkingSetSize
ATTRDEFVAL: 1000000
ATTRVIZ: 3
ATTRDESC:: eod
For NT platforms, defines the server's minimum working set size.
eod

ATTR: max-working-set-size
ATTRID: 29
ATTRHDRNAME: AO_DHCPSERVER_MAXWORKINGSETSIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: MaxWorkingSetSize
ATTRDEFVAL: 4000000
ATTRVIZ: 3
ATTRDESC:: eod
For NT platforms, defines the server's maximum working set size.
eod

ATTR: scope-selection-tags
ATTRID: 30
ATTRHDRNAME: AO_DHCPSERVER_ATTRIBUTES
ATTRTYPE: AT_SET(AT_STRING)
ATTRMCDPATH: attributes
ATTRVIZ: 1
DEPRECATED: 5.0
ATTRDESC:: eod
Deprecated in CNR6.1

The list of scope selection tags associated with this scope. In this
context the term tags refers to a named entity that is used to control
matching client and client-class entries with candidate scopes.
eod

ATTR: clients
ATTRID: 31
ATTRHDRNAME: AO_DHCPSERVER_CLIENTS
ATTRTYPE: AT_LISTREF(ClientEntry)
ATTRMCDPATH: clients
ATTRVAL: 1106
ATTRVIZ: 0
ATTRDESC:: eod
There is no reference from the DHCP server to its clients
eod

ATTR: clientclasses
ATTRID: 32
ATTRHDRNAME: AO_DHCPSERVER_CLIENTCLASSES
ATTRTYPE: AT_LISTREF(ClientEntry)
ATTRMCDPATH: clientclasses
ATTRVAL: 1106
ATTRVIZ: 0
ATTRDESC:: eod
There is no reference from the DHCP server to its client classes.
eod

ATTR: scopes
ATTRID: 33
ATTRHDRNAME: AO_DHCPSERVER_SCOPES
ATTRTYPE: AT_LISTREF(Scope)
ATTRMCDPATH: scopes
ATTRVAL: 1101
ATTRVIZ: 0
ATTRDESC:: eod
There is no reference from the DHCP server to its scopes.
eod

ATTR: policies
ATTRID: 34
ATTRHDRNAME: AO_DHCPSERVER_POLICIES
ATTRTYPE: AT_LISTREF(Policy)
ATTRMCDPATH: policies
ATTRVAL: 1102
ATTRVIZ: 0
ATTRDESC:: eod
There is no reference from the DHCP server to its policies.
eod

ATTR: interfaces
ATTRID: 35
ATTRHDRNAME: AO_DHCPSERVER_INTERFACES
ATTRTYPE: AT_ARRAY(AT_STRUCT(Interface))
ATTRFLAGS: AF_NOTREE
ATTRMCDPATH: interfaces
ATTRVAL: 1104
ATTRVIZ: 3
ATTRDESC:: eod
Maintains the list of interfaces used by the server. 
eod

ATTR: scriptpoints
ATTRID: 36
ATTRHDRNAME: AO_DHCPSERVER_SCRIPT_POINTS
ATTRTYPE: AT_STRUCT(DHCPScriptPoints)
ATTRMCDPATH: scriptpoints
ATTRVAL: 1109
ATTRVIZ: 1
ATTRDESC:: eom
The sub-structure specifying which extension modules should be
called at each extension point.
eom

ATTR: hardware-unicast
ATTRID: 37
ATTRHDRNAME: AO_DHCPSERVER_USEHARDWAREUNICAST
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: UseHardwareUnicast
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether or not the DHCP server sends unicast rather
than broadcast responses when a client indicates that it can
accept a unicast. This feature may not be available on all platforms.
eod

ATTR: discover-interfaces
ATTRID: 38
ATTRHDRNAME: AO_DHCPSERVER_DISCOVERINTERFACES
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: DiscoverInterfaces
ATTRVIZ: 5
ATTRDESC:: eod
Causes the DHCP server to find all the interface cards on the host
and process DHCP requests that it receives from any of them. It will,
however, only offer addresses to requests from subnets in which you
have defined a valid scope with available addresses. If you do not
enable this feature, the DHCP server only uses its list of configured
interfaces.
eod

ATTR: log-unknown-criteria
ATTRID: 39
ATTRHDRNAME: AO_DHCPSERVER_LOG_UNKNOWN_CRITERIA
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: LogUnknownCriteria
ATTRVIZ: 1
ATTRDESC:: eod
Deprecated: use 'log-settings'
eod

ATTR: extension-trace-level
ATTRID: 40
ATTRHDRNAME: AO_DHCPSERVER_SCRIPT_TRACE_LEVEL
ATTRTYPE: AT_INT
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 0
ATTRMCDPATH: ScriptTraceLevel
ATTRVIZ: 5
ATTRDESC:: eod
Is the default value of the extension trace level whenever any
extension is executed. You can override this value for any
extensions executing on behalf of a request by setting the
trace-level in the environment dictionary of the extension.
eod

ATTR: drop-packet-on-extension-failure
ATTRID: 41
ATTRHDRNAME: AO_DHCPSERVER_DROP_PACKET_ON_SCRIPT_FAILURE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: DropPacketOnScriptFailure
ATTRVIZ: 5
ATTRDESC:: eod
Causes the server to drop a packet (if possible) when it encounters
an extension failure.
eod

ATTR: use-ldap-client-data
ATTRID: 44
ATTRHDRNAME: AO_DHCPSERVER_USELDAPCLIENTDATA
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: UseLdapForClientData
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether or not the DHCP server will attempt to read client-
entry data via LDAP, using the configuration supplied by the 'ldap'
command.
eod

ATTR: fallback-to-local-client-data
ATTRID: 43
ATTRHDRNAME: AO_DHCPSERVER_FALLBACKTOLOCALCLIENTDATA
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: FallbackToLocalClientData
ATTRVIZ: 3
ATTRDESC:: eod
If the server attempts to use LDAP to read client-entry data but
doesn't find any data, the server can try to read the local database
instead.
eod

ATTR: continue-without-client-data
ATTRID: 42
ATTRHDRNAME: AO_DHCPSERVER_CONTINUEWITHOUTCLIENTDATA
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: ContinueWithoutClientData
ATTRVIZ: 3
ATTRDESC:: eod
If the server does not find any client-entry data for a client, and no
default client-entry is specified, the server will continue to process
the client's request if this attribute is TRUE.
eod

ATTR: update-dns-for-bootp
ATTRID: 45
ATTRHDRNAME: AO_DHCPSERVER_UPDATEDNSFORBOOTP
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: UpdateDnsForBootp
ATTRVIZ: 5
ATTRDESC:: eod
If the server is replying to a BOOTP request, and is offering a lease
from a Scope which is configured to perform DNS updates, it will check
this property before beginning the DNS update. This feature allows
an administrator to prevent DNS updates for BOOTP clients, while
allowing updates for DHCP clients.
eod

ATTR: flush-events
ATTRID: 46
ATTRHDRNAME: AO_DHCPSERVER_FLUSHEVENTS
ATTRTYPE: AT_BOOL
ATTRMCDPATH: FlushEvents
ATTRVIZ: 3
ATTRDESC:: eod
It may be necessary to flush the persistant database of pending
DNS and LDAP update events. This should only be used under the
direction of Technical Support.
eod

ATTR: reservations-override-criteria
ATTRID: 47
ATTRHDRNAME: AO_DHCPSERVER_RESERVATIONSOVERRIDECRITERIA
ATTRTYPE: AT_BOOL
ATTRMCDPATH: ReservationsIgnoreCriteria
ATTRVIZ: 1
ATTRDESC:: eod
The server will not honor any reservation that is on a scope
whose selection-tags do not match the selection-criteria (or do
match the selection-criteria-excluded) of a particular client or
its client-class.  If this behavior is found to be incorrect for
some cases, then this boolean value may be set to true.  It should
only be used under the direction of Customer Support.
eod

ATTR: use-one-shot-heaps-for-requests
ATTRID: 48
ATTRHDRNAME: AO_DHCPSERVER_USEONESHOTHEAPSFORREQUESTS
ATTRTYPE: AT_BOOL
ATTRMCDPATH: UseOneShotHeapsForRequests
ATTRVIZ: 1
ATTRDESC:: eod
The server will, by default, use one-shot heaps for memory allocated
for DHCP requests.  If this parameter appears in the configuration
(it does not by default), and its value is false (i.e., 0), then the
server will not use one-shot heaps for DHCP requests.  If one-shot
heaps are not used and if C extensions are used, there will be
memory leaks.
eod

ATTR: use-one-shot-heaps-for-responses
ATTRID: 49
ATTRHDRNAME: AO_DHCPSERVER_USEONESHOTHEAPSFORRESPONSES
ATTRTYPE: AT_BOOL
ATTRMCDPATH: UseOneShotHeapsForResponses
ATTRVIZ: 1
ATTRDESC:: eod
The server will, by default, use one-shot heaps for memory allocated
for DHCP responses.  If this parameter appears in the configuration
(it does not by default), and its value is false (i.e., 0), then the
server will not use one-shot heaps for DHCP responses.  If one-shot
heaps are not used and if C extensions are used, there will be
memory leaks.
eod

ATTR: disable-ldap-warnings
ATTRID: 50
ATTRHDRNAME: AO_DHCPSERVER_DISABLE_LDAP_WARNINGS
ATTRTYPE: AT_BOOL
ATTRMCDPATH: disable-ldap-warnings
ATTRVIZ: 3
ATTRDESC:: eod
This feature turns off some LDAP configuration warnings which aren't
useful if LDAP features are not being used.
eod

ATTR: ldap-mode
ATTRID: 51
ATTRHDRNAME: AO_DHCPSERVER_LDAP_MODE
ATTRMCDPATH: ldap-mode
ATTRTYPE: AT_ENUMINT(round-robin=1, failover=2)
ATTRVIZ: 5
ATTRDESC:: eod
If more than one LDAP server is configured, the servers can operate
in two modes:

In 'round-robin' mode, the servers' preference values are ignored. 
That is, all LDAP servers which are configured to handle client
queries are treated equally, as are all servers configured to accept
lease-state updates.

In 'failover' mode, the active LDAP server with the lowest preference
is always used. If the preferred server loses its connection or fails,
DHCP uses the next server in preference order. Servers with equal
preference are used in round-robin fashion.
eod

ATTR: save-relay-agent-data
ATTRID: 52
ATTRHDRNAME: AO_DHCPSERVER_SAVE_RELAY_DATA
ATTRTYPE: AT_BOOL
ATTRMCDPATH: save-relay-agent-data
ATTRVIZ: 5
ATTRDESC:: eod
In previous versions, this parameter controlled whether the DHCP
server would save the relay agent data for a particular IP
address in the lease state database.  It now has no purpose,
because the relay agent data (if any) is always saved in the
lease state database.  Setting or clearing this parameter now has
no effect, but it still exists so as to not break existing
configuration scripts.
eod


ATTR: keep-relay-data-current
ATTRID: 53
ATTRHDRNAME: AO_DHCPSERVER_KEEP_RELAY_DATA_CURRENT
ATTRTYPE: AT_BOOL
ATTRMCDPATH: keep-relay-data-current
ATTRVIZ: 3
ATTRDESC:: eod
Determines whether DHCP relay-agent option data is cleared when leases
expire or are released.
eod

ATTR: max-dns-requests
ATTRID: 54
ATTRHDRNAME: AO_DHCPSERVER_MAXDNSREQUESTS
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: max-dns-requests
ATTRDEFVAL: 20
ATTRVIZ: 3
ATTRDESC:: eod
Sets the limit on the number of simultaneous DNS updates that the
DHCP server will make to any single DNS server. Too many
simultaneous DNS updates can lead to unnecessary retries,
and adversely effect DNS update performance. A setting of '0'
means 'no limit'.
eod

ATTR: use-release-grace-period
ATTRID: 55
ATTRHDRNAME: AO_DHCPSERVER_USE_RELEASE_GRACE_PERIOD
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: use-release-grace-period
ATTRVIZ: 3
ATTRDESC:: eod
Controls whether the server's global default is to delay the effect
of RELEASE messages from clients. If this global switch is set,
all RELEASE messages will be delayed by a Policy's 'release-grace-
period' attribute.  During the grace period, the client's lease won't
be made available for any other client.
eod

ATTR: allow-release-grace-period
ATTRID: 56
ATTRHDRNAME: AO_DHCPSERVER_ALLOW_RELEASE_GRACE_PERIOD
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRMCDPATH: allow-release-grace-period
ATTRDEFVAL: true
ATTRVIZ: 3
ATTRDESC:: eod
This global switch determines whether the 'use-release-grace-period'
features will affect release processing. If this is disabled, the
'use-release-grace-period' settings on the server, scopes, and
individual clients will be ignored.
eod

ATTR: ignore-icmp-errors
ATTRID: 57
ATTRHDRNAME: AO_DHCPSERVER_IGNORE_ICMP_ERRORS
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRMCDPATH: ignore-icmp-errors
ATTRDEFVAL: true
ATTRVIZ: 5
ATTRDESC:: eod
If this feature is enabled, and the DHCP server has been configured to
send ICMP ECHO requests before offering addresses, the server will
make unavailable any address for which it receives an ECHO reply
within its configured timeout period. If this is disabled, the
DHCP server will also treat ICMP DEST_UNREACHABLE and TTL_EXPIRED
error messages which it receives after sending ICMP ECHO requests as
grounds for making an address unavailable.
eod

ATTR: defer-lease-extensions
ATTRID: 58
ATTRHDRNAME: AO_DHCPSERVER_DEFER_LEASE_EXTENSIONS
ATTRTYPE: AT_BOOL
ATTRMCDPATH: defer-lease-extensions
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: true
ATTRVIZ: 5
ATTRDESC:: eod
If enabled, a DHCP client which renews a lease which is less than
halfway to its expiration will not have its lease extended to the full
lease time.  The client will instead receive a lease corresponding to
the remaining time on its existing lease.  This allows the server to
avoid extra database updates to record the fact of lease extension.
If a client is more than halfway to expiration, this setting will have
no effect: the lease will be extended to the full configured lease
interval as usual.
eod

ATTR: last-transaction-time-granularity
ATTRID: 59
ATTRHDRNAME: AO_DHCPSERVER_LAST_TRANSACTION_TIME_GRANULARITY
ATTRTYPE: AT_TIME
ATTRMCDPATH: last-transaction-time-granularity
ATTRDEFVAL: 60
ATTRVIZ: 5
ATTRDESC:: eod
By default, the server will maintain an accurate record of the time at
which it last interacted with a DHCP client concerning a given lease.
This setting provides a control on how accurate that time is
guaranteed to be.  A setting of 300 seconds, for instance, would allow
the server to avoid database updates whose sole purpose is to update a
last transaction time that is less than 5 minutes in the past.  For
performance reasons, the smallest recommended value is 60 seconds.
eod

ATTR: cisco-dhcp-proxy
ATTRID: 60
ATTRHDRNAME: AO_DHCPSERVER_SOURCE_ADDRESS_FOR_GIADDR
ATTRTYPE: AT_BOOL
ATTRMCDPATH: source-address-for-giaddr
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: false
ATTRVIZ: 3
ATTRDESC:: eod
To accomodate some DHCP Proxy implementations which do not correctly
fill in the giaddr field in INIT-REBOOT and DISCOVER packets, enabling
this attribute will cause the DHCP server to use the source address of
the packet, if it is non-zero, in lieu of the giaddr field.
eod

ATTR: defer-lease-extensions-on-retry
ATTRID: 61
ATTRHDRNAME: AO_DHCPSERVER_DEFER_LEASE_EXTENSIONS_ON_RETRY
ATTRTYPE: AT_BOOL
ATTRMCDPATH: defer-lease-extensions-on-retry
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: true
ATTRVIZ: 3
ATTRDESC:: eod
If enabled, a DHCP client which renews a lease which is expired by
less than the smaller of 30 seconds or their configured renew time 
will not have their lease extended to the full lease time.  The client
will instead receive a lease corresponding to the remaining time on
their existing lease.  This prevents unnecessary database activity 
in the  event the server has already responded to an initial request,
but the client has resent it due to a retry timeout.
eod

ATTR: max-pending-events
ATTRID: 62
ATTRHDRNAME: AO_DHCPSERVER_MAX_PENDING_EVENTS
ATTRTYPE: AT_INT
ATTRMCDPATH: max-pending-events
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 40000
ATTRVIZ: 3
ATTRDESC:: eod
Sets the maximum number of events that can be queued.
eod

ATTR: report-time-as-GMT
ATTRID: 63
ATTRHDRNAME: AO_REPORT_TIME_AS_GMT
ATTRTYPE: AT_BOOL
ATTRMCDPATH: report-time-as-GMT
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: false
ATTRVIZ: 3
ATTRDESC:: eod
Normally times reported in the DHCP logs are expressed in local time.
For backward compatibility with older versions of the server, setting
this attribute will cause times to be reported in GMT.
eod

ATTR: failover-main-server
ATTRID: 64
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_MAIN_SERVER
ATTRTYPE: AT_STRING
ATTRMCDPATH: failover-main-server
ATTRVIZ: 5
ATTRDESC:: eod
The DNS name of the main server associated with this lan
segment.  If this DNS name resolves to the IP address of the
current server, then this server will operate as the main server
for this scope.  It is an error if both the main and backup
server names resolve to the IP addresses which reside on the
same server.  If the backup-server-name is the distinguished
name "local" or is not configured on this scope or in the
server-wide default, then this server is considered to be the
main server for this scope.  Configuring either a
main-server-name or a backup-server-name will enable failover.
eod

ATTR: failover-backup-server
ATTRID: 65
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_BACKUP_SERVER
ATTRTYPE: AT_STRING
ATTRMCDPATH: failover-backup-server
ATTRVIZ: 5
ATTRDESC:: eod
The DNS name of the backup server associated with this lan
segment.  If this DNS name resolves to the IP address of the
current server, then this server will operate as the backup
server for this scope.  It is an error if both the main and
backup server names resolve to the IP addresses which reside on
the same server.  If the main-server-name is the distinguished
name "local" or is not configured in either this scope or the
server-wide default, then this server is considered to be the
backup server for this scope.  Configuring either a
main-server-name or a backup-server-name will enable failover.
eod

ATTR: failover-backup-percentage
ATTRID: 66
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_BACKUP_PERCENTAGE
ATTRTYPE: AT_INT
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 10
ATTRMCDPATH: failover-backup-percentage
ATTRVIZ: 5
ATTRDESC:: eod
The percentage of available addresses that the main server
should send to the backup server.  It must be defined for in
the main server.  If it is defined in a backup server, it is
ignored (to enable copying of configurations).
eod

ATTR: failover-maximum-client-lead-time
ATTRID: 67
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_MCLT
ATTRTYPE: AT_TIME
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 3600
ATTRMCDPATH: failover-mclt
ATTRVIZ: 5
ATTRDESC:: eod
This is maximum client lead time, in seconds.  The "MCLT" controls
how much ahead of the backup server the client's lease expiration can
be.  It must be defined for the scope in the main and backup servers.
Both the main and backup must be configured with identical values for
proper operation.
eod

ATTR: failover-lease-period-factor
ATTRID: 68
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_LEASE_PERIOD_MULTIPLE
ATTRTYPE: AT_INT100
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 1.50
ATTRMCDPATH: failover-lease-period-factor
ATTRVIZ: 5
ATTRDESC:: eod
The multiple of the desired lease period used to update the
backup server when the main server informs it of a new DHCP
client lease period.  A value of 1.00 would be the same as
the lease period that the main would like to give the DHCP
client.  A value of 2.00 would be twice the lease period the
main would like to give the client.  The lease-period-factor
controls how much ahead of the client the backup server's
idea of the lease expiration can be.  The larger this value,
the more the main is independent of the operation of the
backup and the less performance impact the failover protocol
has on the main server performance.  However, the larger
this value, the longer the backup will have to wait to time
out an expired lease and re-use it for a different client in
the event that the main fails and the backup takes over all
DHCP functions.  This attribute must be defined in the for
the scope in the main server.  If it is defined in a backup
server, it is ignored (to enable copying of configurations).
eod

ATTR: failover-use-safe-period
ATTRID: 69
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_USE_SAFE_PERIOD
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRMCDPATH: failover-use-safe-period
ATTRDEFVAL: false
ATTRVIZ: 5
ATTRDESC:: eod
If use-safe-period is disabled, then a server will never go into
PARTNER-DOWN state without an operator command.  It must be
defined for the scope in the main server.  If it is
defined in a backup server, it is ignored (to enable copying of
configurations).
eod

ATTR: failover-safe-period
ATTRID: 70
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_SAFE_PERIOD
ATTRTYPE: AT_TIME
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 86400
ATTRMCDPATH: failover-safe-period
ATTRVIZ: 5
ATTRDESC:: eod
This is the safe period, in seconds.  It does not have to be
the same on both main and backup servers.  It only has meaning if
use-safe-period is enabled.  It must be defined for the scope in the
main server.  If it is defined in a backup server, it is ignored (to
enable copying of configurations).
eod

ATTR: failover-recover
ATTRID: 71
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_RECOVER
ATTRTYPE: AT_DATE
ATTRMCDPATH: failover-recover
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 0
ATTRVIZ: 5
ATTRDESC:: eod
If failover-recover is non-zero and the server has no
record of a previous failover state in its stable storage
then the server assumes that it was previously operational
but lost all of its stable storage.  The time value in
the failover-recover parameter represents a time equal to
or later than the last known time the server could have
been operational.  The server will attempt to refresh
its information in stable storage from its failover partner
by entering RECOVER state and requesting a complete update
of all binding information.  The time value should be
entered using the local time of the nrcmd process.  Formats
for the date are:

-<num><value>
  where <num> is a decimal number and <value> is one of 's', 'm',
  'h', 'd', 'w', in which 's' is seconds, 'm' is minutes, 'h' is
  hours, 'd' is days and 'w' is weeks.

<month> <day> <hour>:<minute>[:<second>] <year>
  where <month> is the name or first three letters of the name of
  the month, <hour> is the hour on a 24- hour clock, and <year> is
  the fully-specified year or a two-digit representation in which
  98 = 1998, 99 = 1999 and all other two digit values XX = 20XX.
eod

ATTR: failover-persist-lease-data-on-partner-ack
ATTRID: 72
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_WRITE_MCD_ON_LEASE_DATA_ACK
ATTRTYPE: AT_BOOL
ATTRMCDPATH: failover-persist-lease-data-on-partner-ack
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: true
ATTRVIZ: 3
ATTRDESC:: eod
Normally, the main server will update MCD whenever the backup
server ACK's it with what the backup knows.  Disabling this
capability will speed up the main server, with the downside that
after restart of the main server it won't know what the backup
knows, and may offer all clients one lease period with a renew
time of the current time plus the MCLT.
eod

ATTR: failover
ATTRID: 73
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_PRINT_ALT, AF_INITIALIZE
ATTRMCDPATH: failover
ATTRDEFVAL: false
ATTRVIZ: 5
ATTRDESC:: eod
If enabled, all scopes configured to use the server's failover
configuration will be able to engage in failover.  If disabled,
only those scopes with failover explicitly enabled will do so.
eod

ATTR: failover-poll-interval
ATTRID: 74
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_POLL_INTERVAL
ATTRTYPE: AT_TIME
ATTRFLAGS: AF_PRINT_ALT, AF_INITIALIZE
ATTRMCDPATH: failover-poll-interval
ATTRDEFVAL: 15
ATTRVIZ: 5
ATTRDESC:: eod
Failover partners will poll one another at this interval (in seconds)
in order to confirm that network connectivity exists.
eod

ATTR: failover-poll-timeout
ATTRID: 75
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_POLL_TIMEOUT
ATTRTYPE: AT_TIME
ATTRFLAGS: AF_PRINT_ALT, AF_INITIALIZE
ATTRMCDPATH: failover-poll-timeout
ATTRDEFVAL: 60
ATTRVIZ: 5
ATTRDESC:: eod
Failover partners who cannot communicate for failover-poll-timeout
seconds will conclude that they have lost network connectivity, and
will change their operational states appropriately.
eod

ATTR: failover-startup-period
ATTRID: 76
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_STARTUP_PERIOD
ATTRTYPE: AT_TIME
ATTRFLAGS: AF_PRINT_ALT, AF_INITIALIZE
ATTRMCDPATH: failover-startup-period
ATTRDEFVAL: 10
ATTRVIZ: 3
ATTRDESC:: eod
The duration of the 'startup-period'. Each time the server starts, it
will attempt to contact its failover partners for startup-period
seconds. the server will wait for the entire startup-period before
accepting DHCP requests for any scopes whose DHCP failover partner
can't be contacted.
eod

ATTR: failover-timer-period
ATTRID: 77
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_TIMER_PERIOD
ATTRTYPE: AT_TIME
ATTRFLAGS: AF_PRINT_ALT, AF_INITIALIZE
ATTRMCDPATH: failover-timer-period
ATTRDEFVAL: 60
ATTRVIZ: 3
ATTRDESC:: eod
This configurable is the period of a timer used by failover processing
in the DHCP server.
eod

ATTR: failover-server-port
ATTRID: 78
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_SERVER_PORT
ATTRTYPE: AT_INT
ATTRMCDPATH: failover-server-port
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 647
ATTRVIZ: 3
ATTRDESC:: eod
The port assigned to the DHCP failover protocol.
eod

ATTR: failover-remote-port
ATTRID: 79
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_REMOTE_PORT
ATTRTYPE: AT_INT
ATTRMCDPATH: failover-remote-port
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 647
ATTRVIZ: 3
ATTRDESC:: eod
If a single machine is running two DHCP processes, this attribute can
be set to a different port than the failover-server-port to allow the
two processes to act as failover partners.
eod

ATTR: failover-dynamic-bootp-backup-percentage
ATTRID: 80
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_DYNAMIC_BOOTP_BACKUP_PERCENTAGE
ATTRTYPE: AT_INT
ATTRMCDPATH: failover-dynamic-bootp-backup-percentage
ATTRVIZ: 5
ATTRDESC:: eod
The percentage of available addresses that the main server
should send to the backup server for scopes on which dynamic
BOOTP has been enabled.  If defined, it must be defined on
the main server.  If it is defined in a backup server, it is
ignored (to enable copying of configurations).  If it is not
defined at all or the value is 0, the
"failover-backup-percentage" will be used instead.  This
parameter is separate from "failover-backup-percentage"
because if dynamic BOOTP is enabled on a scope, a server
will never, even in PARTNER-DOWN state, grant leases on
addresses that are available to the other server because
they can never safely be assumed to be available again.
The MCLT has no meaning for dynamic BOOTP leases.
eod

ATTR: failover-update-retry-time
ATTRID: 81
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_UPDATE_RETRY_TIME
ATTRTYPE: AT_INT
ATTRMCDPATH: failover-update-retry-time
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 10
ATTRVIZ: 3
ATTRDESC:: eod
The time in seconds that a DHCPBNDUPD should wait before retrying.
eod

ATTR: failover-control-retry-time
ATTRID: 82
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_CONTROL_RETRY_TIME
ATTRTYPE: AT_INT
ATTRMCDPATH: failover-control-retry-time
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 30
ATTRVIZ: 3
ATTRDESC:: eod
The time in seconds that a DHCPUPDREQ or DHCPPOOLREQ should wait
before retrying.
eod

ATTR: failover-update-retry-count
ATTRID: 83
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_UPDATE_RETRY_COUNT
ATTRTYPE: AT_INT
ATTRMCDPATH: failover-update-retry-count
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 2
ATTRVIZ: 3
ATTRDESC:: eod
The number of times a DHCPBNDUPD message should retry before
giving up.
eod

ATTR: failover-control-retry-count
ATTRID: 84
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_CONTROL_RETRY_COUNT
ATTRTYPE: AT_INT
ATTRMCDPATH: failover-control-retry-count
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 10
ATTRVIZ: 3
ATTRDESC:: eod
The number of times a DHCPUPDREQ or DHCPPOOLREQ message
should retry before giving up.
eod


ATTR: failover-pending-available-scan-timer-periods
ATTRID: 85
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_PENDING_AVAILABLE_SCAN_TIMER_PERIODS
ATTRTYPE: AT_INT
ATTRMCDPATH: failover-pending-available-scan-timer-periods
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 2
ATTRVIZ: 3
ATTRDESC:: eod
The number of failover-timer-periods to wait when in partner-down
state between running a scan of all pending-available leases to
see if perhaps they may now be set available.
eod

ATTR: failover-unacked-lease-scan-timer-periods
ATTRID: 86
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_UNACKED_LEASE_SCAN_TIMER_PERIODS
ATTRTYPE: AT_INT
ATTRMCDPATH: failover-unacked-lease-scan-timer-periods
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 10
ATTRVIZ: 3
ATTRDESC:: eod
The number of failover-timer-periods to wait when in normal
state between running a scan of all unacked leases to
try again to get them acked.
eod

ATTR: failover-allow-ack-on-update
ATTRID: 87
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_ALLOW_ACK_ON_UPDATE
ATTRTYPE: AT_BOOL
ATTRMCDPATH: failover-allow-ack-on-update
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: true
ATTRVIZ: 3
ATTRDESC:: eod
If this parameter is defined and it is false (i.e., == 0),
the DHCP server will not transmit ACK's for DHCPBNDUPD messages.
Failover will not work in these cases, and this parameter is
only for debugging purposes.
eod

ATTR: failover-send-batch-updates
ATTRID: 88
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_SEND_BATCH_UPDATES
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_PRINT_ALT, AF_INITIALIZE
ATTRMCDPATH: failover-send-batch-updates
ATTRDEFVAL: true
ATTRVIZ: 3
ATTRDESC:: eod
Controls whether this server should send messages containing updates
for multiple leases (when appropriate) to partner servers.
eod

ATTR: failover-skip-ack-on-update
ATTRID: 89
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_SKIP_ACK_ON_UPDATE
ATTRTYPE: AT_INT
ATTRMCDPATH: failover-skip-ack-on-update
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 0
ATTRVIZ: 3
ATTRDESC:: eod
If this parameter is defined and it is non-zero and
failover-allow-ack-on-update is false, then every
failover-skip-ack-on-update acks will be ignored, but the
other ones will be sent.  Useful for checking out the retry
logic.  Do not use this in regular operation.
eod

ATTR: failover-use-only-partner-time-for-client
ATTRID: 90
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_USE_ONLY_PARTNER_TIME_FOR_CLIENT
ATTRTYPE: AT_BOOL
ATTRMCDPATH: failover-use-only-partner-time-for-client
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: false
ATTRVIZ: 3
ATTRDESC:: eod
If this parameter is undefined or it is false (i.e., == 0),
then the server will use the maximum of the time the partner
has acked to this server and the time this server has acked
to the partner when calculating the lease time for a DHCP client.
If this parameter is defined and it is true (i.e., = 1), then
the server will only use the time that partner has acked to
this server when calculating the lease times for a DHCP client.
eod

ATTR: failover-pool-request-scan-timer-periods
ATTRID: 91
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_POOL_REQUEST_SCAN_TIMER_PERIODS
ATTRTYPE: AT_INT
ATTRMCDPATH: failover-pool-request-scan-timer-periods
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 60
ATTRVIZ: 3
ATTRDESC:: eod
A backup server asks its main partner to check whether available
leases should be transferred to it. This configurable sets the 
number of failover-timer-periods that the backup waits between
such requests.
eod

ATTR: failover-allow-automatic-full-recovery
ATTRID: 92
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_ALLOW_AUTOMATIC_FULL_RECOVERY
ATTRTYPE: AT_BOOL
ATTRMCDPATH: failover-allow-automatic-full-recovery
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: true
ATTRVIZ: 3
ATTRDESC:: eod
If this parameter is undefined or it is true, the
server will do a full recover if it notices that the
other server has communicated with it before and yet
it has no record of ever having been run before.
eod

ATTR: failover-skip-pending-available-if-no-partner
ATTRID: 93
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_SKIP_PENDING_AVAILABLE_IF_NO_PARTNER
ATTRTYPE: AT_BOOL
ATTRMCDPATH: failover-skip-pending-available-if-no-partner
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: true
ATTRVIZ: 3
ATTRDESC:: eod
If this parameter is undefined or it is true, the
server will check to see if the client for a lease was created
after this server went into partner down, and if it was and the
server has not communicated with its partner since it went into
partner down, then it will not place the lease in pending-available
state when it otherwise could be placed into available state.
eod

ATTR: failover-allow-update-with-earlier-time
ATTRID: 94
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_ALLOW_UPDATE_WITH_EARLIER_TIME
ATTRTYPE: AT_BOOL
ATTRMCDPATH: failover-allow-update-with-earlier-time
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: true
ATTRVIZ: 3
ATTRDESC:: eod
If this parameter is undefined or it is true, the
server will accept a failover update from its partner with
a client last transaction time prior to that recorded in the
server's state if that update is leased and the server's state
is expired, pending-available, available or other-available and
if the state serial number in the update is the partner's and the
state serial number in this server's lease belongs to this
server.  It will also accept an update if the update's state is
expired and this server's state is disconnected, available or 
other available and the state serial number conditions mentioned 
above are met.
eod

ATTR: echo-relay-agent-option
ATTRID: 95
ATTRHDRNAME: AO_DHCPSERVER_ECHO_RELAY_AGENT_OPTION
ATTRTYPE: AT_BOOL
ATTRMCDPATH: EnableRelayAgentOption
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: true
ATTRVIZ: 3
ATTRDESC:: eod
If this is 'true', the dhcp server will echo the contents of any
relay agent information options back to their senders.
eod

ATTR: avoid-dns-retry-on-renew
ATTRID: 96
ATTRHDRNAME: AO_DHCPSERVER_AVOID_DNS_RETRY_ON_RENEW
ATTRTYPE: AT_BOOL
ATTRMCDPATH: avoid-dns-retry-on-renew
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: true
ATTRVIZ: 3
ATTRDESC:: eod
If this is 'true', the dhcp server will not retry a dynamic dns update
when a client renews its lease, if an update is already in progress.
eod

ATTR: use-eventservice-for-mcd
ATTRID: 97
ATTRHDRNAME: AO_DHCPSERVER_USE_EVENTSERVICE_FOR_MCD
ATTRTYPE: AT_BOOL
ATTRMCDPATH: use-eventservice-for-mcd
#ATTRDEFVAL: false
ATTRVIZ: 1
ATTRDESC:: eod
If this is 'true', the dhcp server will write lease state data to the
MCD database asynchronously.
eod

ATTR: mcd-max-count-per-sync
ATTRID: 98
ATTRHDRNAME: AO_DHCPSERVER_MCD_MAX_COUNT_PER_SYNC
ATTRTYPE: AT_INT
ATTRMCDPATH: mcd-max-count-per-sync
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 30
ATTRVIZ: 1
ATTRDESC:: eod
The maximum number of lease-state updates that will be written to the
DHCP database in a single transaction.
eod

ATTR: mcd-max-wait-per-sync
ATTRID: 99
ATTRHDRNAME: AO_DHCPSERVER_MCD_MAX_WAIT_PER_SYNC
ATTRTYPE: AT_INT
ATTRMCDPATH: mcd-max-wait-per-sync
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 5
ATTRVIZ: 1
ATTRDESC:: eod
The maximum number of seconds that the DHCP server will wait before
writing a transaction to the DHCP database.
eod

ATTR: docsis-version-id-missing
ATTRID: 100
ATTRHDRNAME: AO_DHCPSERVER_DOCSIS_VERSION_ID_MISSING
ATTRTYPE: AT_STRING
ATTRMCDPATH: docsis-version-id-missing
ATTRVIZ: 5
ATTRDESC:: eod
DOCSIS devices are required to furnish their version id
(e.g. "docsis1.0") in the vendor class id option. Upon
receiving such a vendor class-id option (and using a
policy that specifies "%@docsis-vers%" as the value for
the boot-file option, the server substitutes the DOCSIS
version id as the value of the boot-file option. If the vendor
class-id option is missing or is not syntactically correct,
the server will then use this (docsis-version-id-missing)
string for the boot-file option.
eod

ATTR: save-vendor-class-id
ATTRID: 101
ATTRHDRNAME: AO_DHCPSERVER_SAVE_VENDOR_CLASS_ID
ATTRTYPE: AT_BOOL
ATTRMCDPATH: save-vendor-class-id
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: false
ATTRVIZ: 5
ATTRDESC:: eod
This flag dictates whether to store the vendor=class-id, as
furnished in a dhcp request option 60, as part of the lease
record in either ldap, mcd or both.
eod

ATTR: event-store-thread-heap-size
ATTRID: 102
ATTRHDRNAME: AO_DHCPSERVER_EVENT_STORE_THREAD_HEAP_SIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: event-store-thread-heap-size
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 8192
ATTRVIZ: 3
ATTRDESC:: eod
Heap size for the event store's background thread.
eod

ATTR: event-store-sync-interval
ATTRID: 103
ATTRHDRNAME: AO_DHCPSERVER_EVENT_STORE_SYNC_INTERVAL
ATTRTYPE: AT_MSTIME
ATTRMCDPATH: event-store-sync-interval
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 110
ATTRVIZ: 3
ATTRDESC:: eod
Timeout (in millisecs) between sync of the event store's current
logfile.
eod

ATTR: event-store-root-directory
ATTRID: 104
ATTRHDRNAME: AO_DHCPSERVER_EVENT_STORE_ROOT_DIRECTORY
ATTRTYPE: AT_STRING
ATTRMCDPATH: event-store-root-directory
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: dhcpeventstore
ATTRVIZ: 3
ATTRDESC:: eod
The eventstore will use write its logfiles into this subdirectory of
the installation's data directory.
eod

ATTR: event-store-max-file-size
ATTRID: 105
ATTRHDRNAME: AO_DHCPSERVER_EVENT_STORE_MAX_FILE_SIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: event-store-max-file-size
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 524288
ATTRVIZ: 3
ATTRDESC:: eod
The maximum size (in bytes) of each event store logfile.
eod

ATTR: event-store-max-items-to-roll
ATTRID: 106
ATTRHDRNAME: AO_DHCPSERVER_EVENT_STORE_MAX_ITEMS_TO_ROLL
ATTRTYPE: AT_INT
ATTRMCDPATH: event-store-max-items-to-roll
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 25
ATTRVIZ: 3
ATTRDESC:: eod
The maximum number of items to roll forward (during a single sync
cycle) from an old eventstore logfile.
eod

ATTR: event-store-roll-percentage
ATTRID: 107
ATTRHDRNAME: AO_DHCPSERVER_EVENT_STORE_ROLL_PERCENT
ATTRTYPE: AT_INT100
ATTRMCDPATH: event-store-roll-percentage
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 20
ATTRVIZ: 3
ATTRDESC:: eod
An old logfile becomes a candidate to be rolled up when its
percentage of live entries reaches this level.
eod

ATTR: get-subnet-mask-from-policy
ATTRID: 108
ATTRHDRNAME: AO_DHCPSERVER_GET_SUBNET_MASK_FROM_POLICY
ATTRTYPE: AT_BOOL
ATTRMCDPATH: get-subnet-mask-from-policy
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: false
ATTRVIZ: 5
ATTRDESC:: eod
If this is 'true', the dhcp server will retrieve the subnet mask from
a policy, if there is one. Otherwise the server will use the subnet
mask of the scope that contains the client's lease.
eod

ATTR: save-lease-renewal-time
ATTRID: 109
ATTRHDRNAME: AO_DHCPSERVER_SAVE_LEASE_RENEWAL_TIME
ATTRTYPE: AT_BOOL
ATTRMCDPATH: save-lease-renewal-time
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: false
ATTRVIZ: 5
ATTRDESC:: eod
This flag dictates whether to store the expected lease renewal time
as part of the lease state in the server's database.
eod

ATTR: force-dns-updates
ATTRID: 110
ATTRHDRNAME: AO_DHCPSERVER_FORCE_DNS_UPDATES
ATTRTYPE: AT_BOOL
ATTRMCDPATH: force-dns-updates
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: false
ATTRVIZ: 5
ATTRDESC:: eod
If this is 'true', the dhcp server will retry a dynamic dns update
whenever a client renews its lease, even if dhcp thinks that the
update has already been completed successfully.
eod

ATTR: use-client-fqdn-first
ATTRID: 111
ATTRHDRNAME: AO_DHCPSERVER_USE_CLIENT_FQDN_FIRST
ATTRTYPE: AT_BOOL
ATTRMCDPATH: use-client-fqdn-first
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: true
ATTRVIZ: 5
ATTRDESC:: eod
When determining a hostname for a client, this parameter specifies
that the system examine the client-FQDN option on incoming packets
first, before the host-name option. If there is a client-FQDN option
with a hostname specified, the system uses that hostname.
If this option is not there in the incoming packet, the system uses
the host-name option. If this option is turned off, the system obtains
the hostname from the host-name option.
eod

ATTR: use-host-name
ATTRID: 112
ATTRHDRNAME: AO_DHCPSERVER_USE_HOST_NAME
ATTRTYPE: AT_BOOL
ATTRMCDPATH: use-host-name
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: true
ATTRVIZ: 5
ATTRDESC:: eod
This property specifies that the system examine the host-name option
for the hostname. Turn this property off if you do not want the server
to determine a hostname from this option, possibly because the client
is sending unexpected or junk characters.
eod

ATTR: use-client-fqdn
ATTRID: 113
ATTRHDRNAME: AO_DHCPSERVER_USE_CLIENT_FQDN
ATTRTYPE: AT_BOOL
ATTRMCDPATH: use-client-fqdn
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: true
ATTRVIZ: 5
ATTRDESC:: eod
Specifies that the system examine the client-FQDN( Fully Qualified
Domain Name) option for the hostname. Any characters after the first
dot in an FQDN option are ignored because the domain is determined
from the scope. Turn this property off, if you do not want the server
to determine the hostname from this option, possibly because the
client is sending unexpected or junk characters.
eod

ATTR: return-client-fqdn-if-given
ATTRID: 114
ATTRHDRNAME: AO_DHCPSERVER_RETURN_CLIENT_FQDN_IF_GIVEN
ATTRTYPE: AT_BOOL
ATTRMCDPATH: return-client-fqdn-if-given
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: false
ATTRVIZ: 3
ATTRDESC:: eod
This property controls whether the system returns the client FQDN
option back to the client in the outgoing packet if the incoming
packet contains the FQDN option.
eod


ATTR: return-client-fqdn-if-asked
ATTRID: 115
ATTRHDRNAME: AO_DHCPSERVER_RETURN_CLIENT_FQDN_IF_ASKED
ATTRTYPE: AT_BOOL
ATTRMCDPATH: return-client-fqdn-if-asked
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: true
ATTRVIZ: 5
ATTRDESC:: eod
This property controls whether the system returns the client FQDN
option to the client in the outgoing packet if the client requests
it in the parameter request list.
eod

ATTR: max-waiting-packets
ATTRID: 116
ATTRHDRNAME: AO_DHCPSERVER_MAX_WAITING_PACKETS
ATTRTYPE: AT_INT
ATTRMCDPATH: max-waiting-packets
ATTRDEFVAL: 6
ATTRVIZ: 5
ATTRDESC:: eod
Sets the maximum number of packets that can be queued to wait for a
particular IP address.  Whenever there are this many packets in the
queue and a new packet comes in, the server will drop the oldest
packet in the queue on which processing hasn't begun.  A value of 0
indicates that there is no maximum queue length, and all packets are
processed.  In addition, if the value is non-zero, then newly arrived
packets are examined to see if their transaction ID is identical to
existing packets on the queue, and any packets with the same xid and
client are dropped in favor of queueing the newly arrived packet.
Dropped packets are logged if the log setting dropped-waiting-packets
is set (it is off by default.)
eod

ATTR: sms-network-discovery
ATTRID: 117
ATTRHDRNAME: AO_DHCPSERVER_SMS_NETWORK_DISCOVERY
ATTRTYPE: AT_INT
ATTRMCDPATH: sms-network-discovery
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 0
ATTRVIZ: 5
ATTRDESC:: eod
If 0, SMS network discovery is disabled, if 1 SMS network discovery
is enabled, values greater than 1 are reserved for future expansion
and should not be used currently. You have to enable this property
in order to run updateSms command.
eod

ATTR: sms-library-path
ATTRID: 118
ATTRHDRNAME: AO_DHCPSERVER_SMS_LIBRARY_PATH
ATTRTYPE: AT_STRING
ATTRMCDPATH: sms-library-path
ATTRVIZ: 5
ATTRDESC:: eod
If this string is non-empty, that value will override the internal
SMS library name, smsrsgen.dll. If the system path does not include
the location of the SMS dll, you should provide the absolute path of
the dll.
eod

ATTR: sms-site-code
ATTRID: 119
ATTRHDRNAME: AO_DHCPSERVER_SMS_SITE_CODE
ATTRTYPE: AT_STRING
ATTRMCDPATH: sms-site-code
ATTRVIZ: 5
ATTRDESC:: eod
This string specifies the SMS site code name where data is
discovered. Default is the empty string, but for data discovery to
complete successfully, the site code has to be provided.
eod

ATTR: sms-lease-interval
ATTRID: 120
ATTRHDRNAME: AO_DHCPSERVER_SMS_LEASE_INTERVAL
ATTRTYPE: AT_INT
ATTRMCDPATH: sms-lease-interval
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 1100
ATTRVIZ: 5
ATTRDESC:: eod
This value, measured in millisecs, determines how long DHCP server
should wait before sending out the next lease to SMS server when
executing updateSms command
eod

ATTR: max-lease-state-events
ATTRID: 121
ATTRHDRNAME: AO_DHCPSERVER_MAX_LEASE_STATE_EVENTS
ATTRTYPE: AT_INT
ATTRMCDPATH: max-lease-state-events
#ATTRDEFVAL: 1000
ATTRVIZ: 3
ATTRDESC:: eod
The maximum number of lease-state updates that can be pending. The
server may be offered a client load that exceeds the throughput of
the underlying state database. Once it reaches this limit it will
slow its responses to clients until the pending lease-state data has
been written to the database.
eod

ATTR: always-flush-logs
ATTRID: 122
ATTRHDRNAME: AO_DHCPSERVER_ALWAYS_FLUSH_LOGS
ATTRTYPE: AT_INT
ATTRMCDPATH: always-flush-logs
#ATTRDEFVAL: 1
ATTRVIZ: 3
ATTRDESC:: eod
Controls whether the server flushes every log message synchronously
or not. Setting this param to '0' (FALSE) should reduce the overhead
of logging and improve overall performance.
eod

ATTR: map-user-class-id
ATTRID: 123
ATTRHDRNAME: AO_DHCPSERVER_MAP_USER_CLASS_ID
ATTRTYPE: AT_ENUMINT(none=0, map-as-tag=1, map-as-class=2)
ATTRMCDPATH: map-user-class-id
ATTRDEFVAL: 0
ATTRVIZ: 5
ATTRDESC:: eod
Controls the utilization of the user-class-id option by the server.
If set to 0 it will ignore user class-id (the default). If set to 1
it will map the user-class-id to a selection-tag, or if set to 2 it
will map user-class-id directly to a client-class.
eod

ATTR: append-user-class-id-to-selection-tag
ATTRID: 124
ATTRHDRNAME: AO_DHCPSERVER_APPEND_USER_CLASS_ID_TO_SELECTION_TAG
ATTRTYPE: AT_BOOL
ATTRMCDPATH: append-user-class-id-to-selection-tag
ATTRDEFVAL: true
ATTRVIZ: 5
ATTRDESC:: eod
This property specifies whether the user-class-id should be appended
to an existing selection-tag or ignored. This value is meaningful only
if the map-user-class-id property is set to map to selection-tag
(i.e, map-user-class-id has a value of 1).
eod

ATTR: skip-client-lookup
ATTRID: 125
ATTRHDRNAME: AO_DHCPSERVER_SKIP_CLIENT_LOOKUP
ATTRTYPE: AT_BOOL
ATTRMCDPATH: skip-client-lookup
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: false
ATTRVIZ: 5
ATTRDESC:: eod
This property determines whether the client entry is looked
up from the database for client-class processing. This value
can be examined as well as changed in a script at the
pre-client-lookup extension point. The default is FALSE.
eod

ATTR: use-new-state-db
ATTRID: 126
ATTRHDRNAME: AO_DHCPSERVER_USE_NEW_STATE_DB
ATTRTYPE: AT_BOOL
ATTRMCDPATH: use-new-state-db
#ATTRDEFVAL: true
ATTRVIZ: 1
ATTRDESC:: eod
Controls whether the dhcp server will use the fastest database
available for lease state.
eod

ATTR: state-db-cache-size
ATTRID: 127
ATTRHDRNAME: AO_DHCPSERVER_STATE_DB_CACHE_SIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: state-db-cache-size
#ATTRDEFVAL: 10000000
ATTRVIZ: 3
ATTRDESC:: eod
The new state database maintains a memory cache of
'state-db-cache-chunks' chunks of this size. That is, the memory
footprint of the database cache is the _product_ of these two
settings.
eod

ATTR: state-db-cache-chunks
ATTRID: 128
ATTRHDRNAME: AO_DHCPSERVER_STATE_DB_CACHE_CHUNKS
ATTRTYPE: AT_INT
ATTRMCDPATH: state-db-cache-chunks
#ATTRDEFVAL: 1
ATTRVIZ: 3
ATTRDESC:: eod
The new state database maintains a memory cache of
'state-db-cache-chunks' chunks of 'state-db-cache-size' size.
That is, the memory footprint of the database cache is the
_product_ of these two settings.
eod

ATTR: state-db-trans-interval
ATTRID: 129
ATTRHDRNAME: AO_DHCPSERVER_STATE_TRANS_INTERVAL
ATTRTYPE: AT_MSTIME
ATTRMCDPATH: state-db-trans-interval
#ATTRDEFVAL: 10
ATTRVIZ: 3
ATTRDESC:: eod
The interval at which pending state database transactions will be
committed, in milliseconds.
eod

ATTR: state-db-checkpoint-interval
ATTRID: 130
ATTRHDRNAME: AO_DHCPSERVER_STATE_CHECKPT_INTERVAL
ATTRTYPE: AT_TIME
ATTRMCDPATH: state-db-checkpoint-interval
ATTRDEFVAL: 60
ATTRVIZ: 3
ATTRDESC:: eod
The interval at which the new state database will checkpoint, in
seconds.
eod

ATTR: collect-performance-statistics
ATTRID: 131
ATTRHDRNAME: AO_DHCPSERVER_COLLECT_PERFORMANCE_STATS
ATTRTYPE: AT_BOOL
ATTRMCDPATH: CollectPerformanceStats
ATTRDEFVAL: false
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether the dhcp server will collect statistics for
performance monitoring.  Default disabled.
eod

ATTR: state-db-use-client-hints
ATTRID: 132
ATTRHDRNAME: AO_DHCPSERVER_STATE_DB_CLIENT_HINTS
ATTRTYPE: AT_BOOL
ATTRMCDPATH: state-db-use-client-hints
#ATTRDEFVAL: false
ATTRVIZ: 1
DEPRECATED: 6.1
ATTRDESC:: eod
Deprecated in CNR 6.1

Controls whether the dhcp server includes and maintains a
database of clients in addition to the database of lease state.
eod

ATTR: state-db-logfile-size
ATTRID: 133
ATTRHDRNAME: AO_DHCPSERVER_STATE_DB_LOGFILE_SIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: state-db-logfile-size
#ATTRDEFVAL: 0
ATTRVIZ: 3
ATTRDESC:: eod
The size of each log file that the underlying database will create,
in bytes. The database's default is currently 10MB.
eod

ATTR: state-db-log-buffer-size
ATTRID: 134
ATTRHDRNAME: AO_DHCPSERVER_STATE_DB_LOG_BUFFER_SIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: state-db-log-buffer-size
#ATTRDEFVAL: 0
ATTRVIZ: 3
ATTRDESC:: eod
The size, in bytes, of the database's internal buffer between
database updates and the logfile. The database's default is
currently 32KB.
eod

ATTR: inhibit-busy-optimization
ATTRID: 135
ATTRHDRNAME: AO_DHCPSERVER_INHIBIT_BUSY_OPTIMIZATION
ATTRTYPE: AT_BOOL
ATTRMCDPATH: inhibit-busy-optimization
ATTRDEFVAL: false
ATTRVIZ: 5
ATTRDESC:: eod
By default, when the server determines that it is very heavily
loaded and that the load is increasing, it will attempt to
recover from the congestion by performing several optimizations.

It will relax the requirements to keep client's last transaction
time updated to the granularity specified by the
last-transaction-time-granularity.

If the inhibit-busy-optimization feature is enabled, the server
will not perform any of the above optimizations.  The server
determines that it is heavily loaded when the number of request
packets in use reaches 2/3 of the total allocated, and resets
that condition when it drops to 1/3 of those allocated.  If the
server determines that it is heavily loaded and
inhibit-busy-optimization is not enabled, it will log a message,
and will also log another message when the condition has been
relieved.
eod

ATTR: drop-old-packets
ATTRID: 136
ATTRHDRNAME: AO_DHCPSERVER_DROP_OLD_PACKETS
ATTRTYPE: AT_INT
ATTRMCDPATH: drop-old-packets
ATTRDEFVAL: 4
ATTRVIZ: 5
ATTRDESC:: eod
The server will attempt to read as many packets as possible from
the UDP input queue, and then process them as quickly as
possible.  If the server is very busy, it can sometimes get
flooded with packets and it can take seconds to get around to
processing some packets.  However, in the DHCP protocol, some
clients will automatically retry packets that have not been
processed in a few seconds -- and so allowing the server to
process packets that are older than a small number of seconds can
just increase the congestion in the server without providing any
real value for the clients.  The drop-old-packets parameter is
the number of seconds that a packet can age and still be
processed by the DHCP server.  If a packet is more than the value
of drop-old-packets old when processed by the DHCP server, the
server will drop the packet.
eod

ATTR: activity-summary-interval
ATTRID: 137
ATTRHDRNAME: AO_DHCPSERVER_ACTIVITY_SUMMARY_PERIOD
ATTRTYPE: AT_TIME
ATTRMCDPATH: activity-summary-interval
ATTRDEFVAL: 300
ATTRVIZ: 5
ATTRDESC:: eod
The time between activity summary log messages in seconds,
if activity-summary is enabled in the server log-settings.
The default value is 5 minutes.
eod

ATTR: mcd-blobs-per-bulk-read
ATTRID: 138
ATTRHDRNAME: AO_DHCPSERVER_MCD_BLOBS_PER_BULK_READ
ATTRTYPE: AT_RANGEINT(1-2500)
ATTRMCDPATH: mcd-blobs-per-bulk-read
#ATTRDEFVAL: 256
ATTRVIZ: 5
ATTRDESC:: eod
The number of blob objects to be read while performing bulk read.
This parameter can be used to tune DHCP start and reload times.
Generally, a higher value will result in faster server start and
reload time, at the cost of using more memory. Values can be set
to any number between 1 and 2500.
eod

ATTR: policy-count
ATTRID: 139
ATTRHDRNAME: AO_DHCPSERVER_POLICY_COUNT
ATTRTYPE: AT_INT
ATTRMCDPATH: policy-count
ATTRFLAGS: AF_IMMUTABLE, AF_INITIALIZE
ATTRDEFVAL: 0
ATTRVIZ: 3
ATTRDESC:: eod
The number of policies configured in the server.
This is a read-only attribute.
eod

ATTR: scope-count
ATTRID: 140
ATTRHDRNAME: AO_DHCPSERVER_SCOPE_COUNT
ATTRTYPE: AT_INT
ATTRMCDPATH: scope-count
ATTRFLAGS: AF_IMMUTABLE, AF_INITIALIZE
ATTRDEFVAL: 0
ATTRVIZ: 3
ATTRDESC:: eod
The number of scopes configured in the server.
This is a read-only attribute.
eod

ATTR: lease-count
ATTRID: 141
ATTRHDRNAME: AO_DHCPSERVER_LEASE_COUNT
ATTRTYPE: AT_INT
ATTRMCDPATH: lease-count
ATTRFLAGS: AF_IMMUTABLE, AF_INITIALIZE
ATTRDEFVAL: 0
ATTRVIZ: 3
ATTRDESC:: eod
The number of leases configured in the server.
This is a read-only attribute.
eod

ATTR: reservation-count
ATTRID: 142
ATTRHDRNAME: AO_DHCPSERVER_RESERVATION_COUNT
ATTRTYPE: AT_INT
ATTRMCDPATH: reservation-count
ATTRFLAGS: AF_IMMUTABLE, AF_INITIALIZE
ATTRDEFVAL: 0
ATTRVIZ: 3
ATTRDESC:: eod
The number of reservations configured in the server.
This is a read-only attribute.
eod

ATTR: failover-bulking
ATTRID: 143
ATTRHDRNAME: AO_DHCPSERVER_FAILOVER_BULKING
ATTRTYPE: AT_BOOL
ATTRMCDPATH: failover-bulking
ATTRDEFVAL: true
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether multiple lease state updates are
contained on one failover BNDUPD.  Only controls
lease state updates generated by DHCP client activity.
eod

ATTR: state-db-log-purge-interval
ATTRID: 144
ATTRHDRNAME: AO_DHCPSERVER_DB_LOG_PURGE_INTERVAL
ATTRTYPE: AT_TIME
ATTRMCDPATH: state-db-log-purge-interval
ATTRDEFVAL: 3600
ATTRVIZ: 3
ATTRDESC:: eod
The interval at which the new state database will check for and
purge unneeded db log files, in seconds.
eod

ATTR: ignore-requests-for-other-servers
ATTRID: 145
ATTRHDRNAME: AO_DHCPSERVER_IGNORE_REQUEST_FOR_OTHER_SERVER
ATTRTYPE: AT_BOOL
ATTRMCDPATH: ignore-requests-for-other-servers
ATTRVIZ: 5
ATTRDESC:: eod
If this capability is enabled (which it is not by
default), the DHCP server will not set a lease UNAVAILABLE
if it sees a client responding to a different server for
an IP address that this server believes that it controls.
Some clients send request packets with bad server-id options
(not actually directed to another server), and so cause
lots of IP addresses to go UNAVAILABLE in error.
eod

ATTR: cnr-5-0-upgraded
ATTRID: 146
ATTRHDRNAME: AO_DHCPSERVER_CNR_5_0_UPGRADED
ATTRTYPE: AT_DATE
ATTRMCDPATH: cnr-5-0-upgraded
ATTRVIZ: 5
ATTRDESC:: eod
Indicates a version 3.5.x to 5.0.x upgrade was run on this database.
eod

ATTR: scp-port
ATTRID: 147
ATTRHDRNAME: AO_DHCPSERVER_SCP_PORT
ATTRTYPE: AT_RANGEINT(0-65535)
ATTRMCDPATH: scp-port
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the scp port number to be used. If the requested port
number is in use, the server will select an alternate number to use.
eod

ATTR: use-dns-update-prereqs
ATTRID: 150
ATTRHDRNAME: AO_DHCPSERVER_USE_DNS_PREREQS
ATTRTYPE: AT_BOOL
ATTRDEFVAL: true
ATTRMCDPATH: use-dns-update-prereqs
ATTRDESC:: eod
By default, the DHCP server uses prerequisites in its DNS update
messages when it is performing DNS updates on behalf of clients. If
this parameter is 'false', the server will not include prerequisites.
Without them, the last client who uses a given domain name will be
associated with that name, even if another client was already
associated with the name.
eod

ATTR: leasequery-reserved-lease-time
ATTRID: 151
ATTRHDRNAME: AO_DHCPSERVER_LEASEQUERY_RESERVED_LEASE_TIME
ATTRTYPE: AT_INT
ATTRMCDPATH: leasequery-reserved-lease-time
ATTRDEFVAL: 31536000
ATTRVIZ: 3
ATTRDESC:: eod
The leasequery reserved lease time is the dhcp-lease-time
option for a reserved lease that has never been leased.
eod

ATTR: delete-orphaned-leases
ATTRID: 152
ATTRHDRNAME: AO_DHCPSERVER_DELETE_ORPHANED_LEASES
ATTRTYPE: AT_BOOL
ATTRDEFVAL: false
ATTRMCDPATH: delete-orphaned-leases
ATTRVIZ: 5
ATTRDESC:: eod
When the DHCP server starts, it reads all of the leases which are
in the lease state database and attempts to match them up with
the current configuration recorded in the configuration database.
There are two ways that a lease can be "orphaned".  In the most
common case, a lease that appears in the lease state database is
not configured in any range or reservation in any scope in the
configuration database.  In the less common case, a lease that
appears in the lease state database specifies a namespace-id for
which a corresponding namespace is not found in the configuration
database.  In either of these cases, the lease cannot be utilized
by the DHCP server (independent of the setting of this property).
This property controls whether a lease which is orphaned (for
either of the two above reasons) is deleted from the lease state
database when the server next reloads.  If true, then all
orphaned leases are deleted whenever they are detected.  This
ensures that the lease state database has no "old", unconfigured
leases in it, but also may cause the total loss of lease state
information due to a mistake in configuration.  If false, then
orphaned leases are not deleted -- and if they were orphaned due
to a configuration mistake, then when the mistake is corrected
they will still be useful.  Of course, if false, then leases
which have been unconfigured intentionally will not be purged
from the lease state database.
eod

ATTR: vpn-communication
ATTRID: 153
ATTRHDRNAME: AO_DHCPSERVER_VPN_COMMUNICATION
ATTRTYPE: AT_BOOL
ATTRDEFVAL: true
ATTRMCDPATH: vpn-communication
ATTRVIZ: 5
ATTRDESC:: eod
If the vpn-communication capability is enabled, the DHCP server will
be able to communicate with DHCP clients which reside on a different
VPN from that of the DHCP server by utilizing an enhanced DHCP Relay
Agent capability.  This enhanced DHCP Relay Agent capability is
indicated by the appearance of the server-id-override sub-option in
the relay agent information option (Option 82).
eod

ATTR: client-cache-count
ATTRID: 154
ATTRHDRNAME: AO_DHCPSERVER_CLIENT_CACHE_COUNT
ATTRTYPE: AT_INT
ATTRMCDPATH: client-cache-count
ATTRDEFVAL: 1000
ATTRVIZ: 5
ATTRDESC:: eod
The number of clients to be cached by the server, to avoid reading
the persistent storage for processing DHCPREQUEST from a client.
eod

ATTR: client-cache-ttl
ATTRID: 155
ATTRHDRNAME: AO_DHCPSERVER_CLIENT_CACHE_TTL
ATTRTYPE: AT_TIME
ATTRMCDPATH: client-cache-ttl
ATTRDEFVAL: 10
ATTRVIZ: 5
ATTRDESC:: eod
Maximum time-to-live (in seconds) for a client in cache, before
being discarded.
eod

ATTR: delete-orphaned-subnets
ATTRID: 156
ATTRHDRNAME: AO_DHCPSERVER_DELETE_ORPHANED_SUBNETS
ATTRTYPE: AT_BOOL
ATTRDEFVAL: false
ATTRMCDPATH: delete-orphaned-subnets
ATTRVIZ: 5
ATTRDESC:: eod
The DHCP server reads its its database of subnets as it starts
up, attempting to locate the parent namespace and the parent
address-block of each subnet. If a subnet refers to a namespace
that is no longer configured in the server, or if the server cannot
locate a parent address-block which contains the subnet,
it uses the value of delete-orphaned-subnets to decide whether
to delete the subnet from the state database permanently.
eod

ATTR: ip-history
ATTRID: 157
ATTRHDRNAME: AO_DHCPSERVER_SAVE_IP_HISTORY
ATTRTYPE: AT_BOOL
ATTRDEFVAL: false
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: ip-history
ATTRDESC:: eod
Enables the lease history database.
eod

ATTR: ip-history-dir
ATTRID: 158
ATTRHDRNAME: AO_DHCPSERVER_IP_HISTORY_DIR
ATTRTYPE: AT_STRING
ATTRMCDPATH: ip-history-dir
ATTRVIZ: 1
DEPRECATED: 6.1
ATTRDESC:: eod
deprecated in cnr 6.1

Specifies the directory in which the lease history database
should be kept. If you enable the lease history feature, we
recommend that you place its database on a different disk
partition from the server's lease state database. This reduces
competition for disk access and free disk space.
eod

ATTR: ip-history-key
ATTRID: 159
ATTRHDRNAME: AO_DHCPSERVER_IP_HISTORY_KEY
ATTRTYPE: AT_INT
ATTRDEFVAL: 51
ATTRMCDPATH: ip-history-key
ATTRVIZ: 1
DEPRECATED: 6.1
ATTRDESC:: eod
deprecated in cnr 6.1

Specifies the shared memory key id for systems where the DB subsystem
requires an explicit shared memory key.  (Currently Sys5 based UNIX
systems, such as Solaris).
eod

ATTR: max-lease-expirations
ATTRID: 160
ATTRHDRNAME: AO_DHCPSERVER_MAX_LEASE_EXPIRATIONS
ATTRTYPE: AT_INT
ATTRMCDPATH: max-lease-expirations
ATTRVIZ: 3
ATTRDEFVAL: 100
ATTRDESC:: eod
The maximum number of leases that will be allowed to expire in a
single timer queue interval.
eod

ATTR: addr-blocks-use-lan-segments
ATTRID: 161
ATTRHDRNAME: AO_DHCPSERVER_BLOCKS_USE_LANSEGMENTS
ATTRTYPE: AT_BOOL
ATTRMCDPATH: addr-blocks-use-lan-segments
ATTRVIZ: 5
ATTRDEFVAL: false
ATTRDESC:: eod
Controls whether DHCP subnet-allocation uses the
lan-segment attribute when configured on address-blocks.
eod

ATTR: addr-blocks-use-client-affinity
ATTRID: 162
ATTRHDRNAME: AO_DHCPSERVER_BLOCKS_USE_AFFINITY
ATTRTYPE: AT_BOOL
ATTRMCDPATH: addr-blocks-use-client-affinity
ATTRVIZ: 5
ATTRDEFVAL: true
ATTRDESC:: eod
The DHCP server attempts to allocate subnets to clients
using address-blocks that the clients have already used. This
parameter allows that behavior to be disabled, in which case the
server will supply subnets from any block that is suitable (based
on other selection data in the clients' messages.)
eod

ATTR: addr-blocks-use-selection-tags
ATTRID: 163
ATTRHDRNAME: AO_DHCPSERVER_BLOCKS_USE_TAGS
ATTRTYPE: AT_BOOL
ATTRMCDPATH: addr-blocks-use-selection-tags
ATTRVIZ: 5
ATTRDEFVAL: true
ATTRDESC:: eod
Controls whether the server compares incoming subnet-allocation
requests' subnet name data with each address-block's selection
tags. A block will only be considered if the two match.
eod

ATTR: addr-blocks-default-selection-tags
ATTRID: 164
ATTRHDRNAME: AO_DHCPSERVER_BLOCKS_DEFAULT_TAGS
ATTRTYPE: AT_ARRAY(AT_STRING)
ATTRMCDPATH: addr-blocks-default-selection-tags
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the default selection tag (or list of tags) that will
be associated with incoming subnet-allocation requests that do
not contain any subnet name data.
eod

# special attr for use in diagnosing CSCdw17069

ATTR: timeout-auto-debug-duration
ATTRID: 165
ATTRHDRNAME: AO_DHCPSERVER_TIMEOUT_DEBUG_TIME
ATTRTYPE: AT_TIME
ATTRVIZ: 3
ATTRMCDPATH: timeout-auto-debug-duration
ATTRDESC:: eod
If auto-debug is activated by a premature lease expiration,
it will remain active for this duration, and then
the debug tracing will shut itself off. A value of zero
disables the auto-debug tracing.
eod

ATTR: client-class-lookup-id
ATTRID: 166
ATTRHDRNAME: AO_DHCPSERVER_CLIENT_CLASS_LOOKUP_ID
ATTRTYPE: AT_EXPR
ATTRMCDPATH: client-class-lookup-id
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the expression to use to determine a client class solely
on data contained in an incoming DHCP client request.
The expression must return a string which is the name of a currently
configured client class, otherwise the string "<none>" must be
returned. Any return that is not a string containing the name of
a currently configured client class or "<none>" is considered an
error.
eod

ATTR: expression-trace-level
ATTRID: 167
ATTRHDRNAME: AO_DHCPSERVER_EXPRESSION_TRACE_LEVEL
ATTRTYPE: AT_INT
ATTRDEFVAL: 2
ATTRMCDPATH: expression-trace-level
ATTRVIZ: 5
ATTRDESC:: eod
Specfies the trace level to be used when executing DHCP
expressions.  The range is from 0 to 6, with 0 being no
tracing and 6 the highest amount of tracing.
    0	no tracing
    1	failures (including those protected by (try ...))
    2   total failure retries (with trace level = 6 for retry)
    3	function calls and returns
    4	function arguments evaluation
    5	print out function arguments
    6	datatype conversions
    6	everything
There is considerable performance penalty to any setting
besides 0, 1, or 2.  The setting of 1 only traces when there
is a failure in an expression.  The default setting of 2 will
re-execute the evaluation of an expression which fails at
the outermost level with the expression-trace-level=6
for the duration of the reexecution, to provide maximum
debugging assistance.
eod

ATTR: state-db-lock-count
ATTRID: 168
ATTRHDRNAME: AO_DHCPSERVER_STATE_DB_LOCK_COUNT
ATTRTYPE: AT_INT
ATTRMCDPATH: state-db-lock-count
ATTRDEFVAL: 15000
ATTRVIZ: 3
ATTRDESC:: eod
The state database must be configured with a lock count,
else the default of 15000 will be used.  Sometimes, particularly
when processing a new failover configuration with very large
scopes (>65K leases) the number of leases per database transaction
can grow well beyond 15000, but the state-db-max-trans-count (default
5000) will limit this.  Set debug G=1 and reload the server to
see the high water mark for locks used.
eod

ATTR: state-db-max-commit-time
ATTRID: 169
ATTRHDRNAME: AO_DHCPSERVER_STATE_DB_MAX_COMMIT_TIME
ATTRTYPE: AT_INT
ATTRMCDPATH: state-db-max-commit-time
#ATTRDEFVAL: 60
ATTRVIZ: 3
ATTRDESC:: eod
A time in seconds within which the state database background
thread must perform a database write or a trigger will be set.
If three such triggers are set together with no intervening writes,
the DHCP server will abort.
eod

ATTR: renewal-inhibition-max-time
ATTRID: 170
ATTRTYPE: AT_TIME
ATTRMCDPATH: renewal-inhibition-max-time
ATTRDEFVAL: 60
ATTRVIZ: 3
ATTRDESC:: eod
When inhibit-renews or inhibit-renews-at-reboot is enabled, the server
uses this time interval to distinguish between client messages which
should be rejected, and retries or retransmissions which should not be
inhibited.
eod

ATTR: ignore-cnr-echo
ATTRID: 171
ATTRTYPE: AT_BOOL
ATTRMCDPATH: ignore-cnr-echo
ATTRDEFVAL: false
ATTRVIZ: 3
ATTRDESC:: eod
This parameter causes the server to ignore the user-class option
value used by test clients.
eod

ATTR: state-db-max-trans-count
ATTRID: 172
ATTRHDRNAME: AO_DHCPSERVER_STATE_DB_MAX_TRANS_COUNT
ATTRTYPE: AT_INT
ATTRMCDPATH: state-db-max-trans-count
#ATTRDEFVAL: 5000
ATTRVIZ: 3
ATTRDESC:: eod
Then maximum number of data items allowed within one transaction
in the lease state database. Default 5000. No value or a value of zero
indicates no limit.
eod

ATTR: state-db-no-trans-interval
ATTRID: 173
ATTRHDRNAME: AO_DHCPSERVER_STATE_DB_NO_TRANS_INTERVAL
ATTRTYPE: AT_INT
ATTRMCDPATH: state-db-no-trans-interval
#ATTRDEFVAL: 100
ATTRVIZ: 3
ATTRDESC:: eod
When the number of data items exceeds this count, the state
database write thread will not wait the state-db-trans-interval
number of milliseconds before writing the next batch of updates.
Default 100.
eod

ATTR: dynamic-dns-tsig
ATTRID: 174
ATTRTYPE: AT_ENUMINT(enable-fwd-and-rev=1,disable-fwd-and-rev=2,enable-fwd-only=3,enable-rev-only=4)
ATTRDEFVAL: disable-fwd-and-rev
ATTRFLAGS: AF_PRINT_ALT
ATTRMCDPATH: dynamic-dns-tsig
ATTRVIZ: 5
ATTRDESC:: eod
This attribute controls whether TSIG is used for DNS updates for
leases from this server.

If set to 'enable-fwd-and-rev' or 'disable-fwd-and-rev' tsig will
or will not be used for both forward and reverse zone updates,
respectively.

If set to 'enable-fwd-only' or 'enable-rev-only', tsig will
be used for forward or reverse updates alone, respectively.
eod

ATTR: dynamic-dns-fwd-key
ATTRID: 175
ATTRTYPE: AT_DNSNAME
ATTRMCDPATH: ddns-fwd-key
ATTRVIZ: 5
ATTRDESC:: eod
Server wide security key to process all forward zone dynamic DNS
updates (DNS server is specified by attribute dns-server-addr and zone
name is specified by dns-zone-name attribute in a scope object).
eod

ATTR: dynamic-dns-rev-key
ATTRID: 176
ATTRTYPE: AT_DNSNAME
ATTRMCDPATH: ddns-rev-key
ATTRVIZ: 5
ATTRDESC:: eod
Server wide security key to process reverse zone dynamic DNS updates
for all leases available in this server. (DNS server is specified by
attribute 'dns-rev-server-addr' and reverse zone name is specified by
'dns-reverse-zone-name' attribute in a scope object).
eod

ATTR: state-db-average-time-percentage
ATTRID: 177
ATTRHDRNAME: AO_DHCPSERVER_STATE_DB_AVERAGE_TIME_PERCENTAGE
ATTRTYPE: AT_INT
ATTRMCDPATH: state-db-average-time-percentage
ATTRDEFVAL: 0
ATTRVIZ: 3
ATTRDESC:: eod
This attribute controls the state database operation time
statistics.  If the value of this attribute is zero, no
time statistics are kept for the state database.  If this
value is non-zero, it does two things.  First, it enables
timing (at a gross 1 second granularity) of state database
operations.  Second, it controls the weight the most recent
value has in the running average.  A number of 10 is a
reasonable starting point to use when enabling this capablity.
By default it not enabled.
eod

ATTR: state-db-limit-load
ATTRID: 178
ATTRHDRNAME: AO_DHCPSERVER_STATE_DB_LIMIT_LOAD
ATTRTYPE: AT_BOOL
ATTRMCDPATH: state-db-limit-load
ATTRDEFVAL: true
ATTRVIZ: 3
ATTRDESC:: eod
Controls whether the load on the state database manager is
limited or let to run at the fastest data rate possible.
By default the parameter is unset, but the server does limit
the load.
eod

ATTR: process-lease-count-limit
ATTRID: 179
ATTRHDRNAME: AO_DHCPSERVER_PROCESS_LEASE_COUNT_LIMIT
ATTRTYPE: AT_INT
ATTRMCDPATH: process-lease-count-limit
ATTRDEFVAL: 10
ATTRVIZ: 3
ATTRDESC:: eod
Controls the number of recursive calls allowed upon the stack
when processing multiple leases from a single response.  Used
primarily in failover.  A value too large will overflow the
stack.
eod

ATTR: defer-lease-extensions-for-changed-times
ATTRID: 180
ATTRHDRNAME: AO_DHCPSERVER_DEFER_LEASE_EXTENSIONS_FOR_CHANGED_TIMES
ATTRTYPE: AT_BOOL
ATTRMCDPATH: state-db-defer-lease-extensions-for-changed-times
ATTRDEFVAL: true
ATTRVIZ: 3
ATTRDESC:: eod
If set to false, will cause the server to not defer lease
extensions for leases whose lease times wre recalculated for
failover.  By default it is unset, but the server allows defer
lease extensions for failover leases.
eod


ATTR: validate-client-name-as-mac
ATTRID: 181
ATTRHDRNAME: AO_DHCPSERVER_VALIDATE_CLIENT_NAME_AS_MAC
ATTRTYPE: AT_BOOL
ATTRMCDPATH: validate-client-name-as-mac
ATTRDEFVAL: true
ATTRVIZ: 5
ATTRDESC:: eod
If set, the user interfaces should require that the name
of client entries is a valid MAC address (or the literal
string 'default') and should turn the name into the canonical
MAC address (1,6,xx:xx:xx:xx:xx:xx) format that the DHCP
server will use as the default client entry lookup key.

If set to false, the user interfaces will allow the
creation of client entries with arbitrary names, which
could match the lookup keys generated from the
client-lookup-id expression.
eod

ATTR: expression-configuration-trace-level
ATTRID: 182
ATTRHDRNAME: AO_DHCPSERVER_EXPRESSION_CONFIGURATION_TRACE_LEVEL
ATTRTYPE: AT_INT
ATTRDEFVAL: 2
ATTRMCDPATH: expression-configuration-trace-level
ATTRVIZ: 5
ATTRDESC:: eod
Specfies the trace level to be used when configuring DHCP
expressions.  The range is from 0 to 6, with 0 being the
lowest amount of tracing and 6 the highest.
    0   no additional tracing
    1	no additional tracing
    2	failure retry
    3	function definitions
    4	function arguments
    5	variable lookups and literal details
    6	everything
There is no performance penalty to specify a high expression-
configuration-trace-level, as expressions are configured only when
the server is started.  The default value is 2, which will retry
any configuration that fails with full tracing enabled.
eod

ATTR: upgrade-unavailable-timeout
ATTRID: 183
ATTRHDRNAME: AO_DHCPSERVER_UPGRADE_UNAVAILABLE_TIMEOUT
ATTRTYPE: AT_TIME
ATTRDEFVAL: 86400
ATTRMCDPATH: ungrade-unavailable-timeout
ATTRVIZ: 5
ATTRDESC:: eod
When the server is reading the lease state database from disk during a
server reload, if it finds an unavailable lease without an expiration
time (which it will for any lease that went unavailable prior to CNR
6.0), it will use the upgrade-unavailable-timeout for the expiration
time of the unavailable state lease.
eod

ATTR: leasequery-max-scan
ATTRID: 184
ATTRHDRNAME: AO_DHCPSERVER_LEASEQUERY_MAX_SCAN
ATTRTYPE: AT_INT
ATTRDEFVAL: 5000
ATTRVIZ: 3
ATTRDESC:: eod
Determines the number of leases that the leasequery processing will
scan before it waits for a millisecond to allow other activity to
access the network on which it is working.  A shorter number will
increase the speed with which leasequery requests for non-existant MAC
addresses are processed at the cost of locking out regular DHCP
requests for a longer period of time.
eod

ATTR: initial-environment-dictionary
ATTRID: 185
ATTRHDRNAME: AO_DHCPSERVER_INITIAL_ENVIRONMENT_DICTIONARY
ATTRTYPE: AT_STRING
ATTRVIZ: 5
ATTRDESC:: eod
This string contains attribute-value pairs that are used to initialize
all environment dictionaries used within the DHCP server.  You can use
these attribute-value pairs to configure extensions or expressions
without having to re-write the executable code in the extension or
expression.  The string must have the format:
"attribute1=value1,attribute2=value2, ... ,attributen=valuen"
eod

ATTR: synthesize-reverse-zone
ATTRID: 186
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: true
ATTRHDRNAME: AO_DHCPSERVER_SYNTHESIZE_REVERSE_ZONE
ATTRMCDPATH: synthesize-reverse-zone
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether or not the DHCP server automatically generates the
name of the reverse zone (in-addr.arpa) that is updated with PTR
records.

If this feature is enabled, scopes do not have to have an explicit
dns-reverse-zone-name attribute configured. Instead, the DHCP server
will use each lease's IP address and the scope's dns-host-bytes
attribute to synthesize the reverse zone name for each update. The
server trims host-bytes bytes from the low-order bytes of the address,
and turns the remaining bytes into a zone name of the form
'.b.a.in-addr.arpa.' The host-bytes low-order bytes of the address are
used to form the hostname within that zone.
eod

ATTR: trim-host-name
ATTRID: 187
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: true
ATTRHDRNAME: AO_DHCPSERVER_TRIM_HOST_NAME
ATTRMCDPATH: trim-host-name
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether or not DHCP server will trim host-name string to the 
first period character (used to update DDNS records and to return 
host-name-option to clients).

If this feature is enabled host-name will be truncated before the 
period. If this feature is disabled DHCP Server will retain the
period characters in the host-name. 
eod

ATTR: report-active-buffers
ATTRID: 188
ATTRTYPE: AT_ENUMINT(disabled=0,enabled=1,busy-activity-report=2,activity-report=3)
ATTRFLAGS: AF_PRINT_ALT
ATTRDEFVAL: disabled
ATTRVIZ: 3
ATTRDESC:: eod
Controls whether or not the server reports on active request buffers
when it is stopped. Buffers that are in-use when the server is stopped
may indicate that buffers are not available for use in responding to
clients.  If busy-activity-report is set, there will be a summary of 
active buffers whenever the activity summary log message is output 
and the server has used up more than 2/3 of its available request
buffers.  If activity-report is set, then every activity summary log
will contain a summary of active buffers.
eod

ATTR: map-radius-class
ATTRID: 189
ATTRTYPE: AT_ENUMINT(none=0, map-as-tag=1, map-as-class=2, append-to-tags=3)
ATTRMCDPATH: map-radius-class
ATTRDEFVAL: 0
ATTRVIZ: 5
ATTRDESC:: eod
Controls the utilization of the radius class attribute, if one is
present in a request's relay-agent option. The radius class name can
be ignored, mapped as a selection-tag, or mapped as a client-class
name.
eod

ATTR: priority-address-allocation
ATTRID: 190
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRHDRNAME: AO_DHCPSERVER_PRIORITY_ADDRESS_ALLOCATION
ATTRMCDPATH: priority-address-allocation
ATTRVIZ: 5
ATTRDESC:: eod
Controls address allocation among scopes in the same network and
within an individual scope as well.  When enabled, any scope which
does not have an explict setting for allocation-priority will be
configured with an allocation-priority equal to the network number of
the scope.  Similarly, any scope which does not have an explicit
setting for allocate-first-available will consider it to be enabled.
Explicit settings for either of these Scope attributes will override
the action of priority-address-allocation for that attribute for that
scope.

This attribute gives the administrator a way to change address
allocation in a server wide manner without having to separately
configure each scope.  
eod

ATTR: equal-priority-most-available
ATTRID: 191
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRHDRNAME: AO_DHCPSERVER_EQUAL_PRIORITY_MOST_AVAILABLE
ATTRMCDPATH: equal-priority-most-available
ATTRVIZ: 5
ATTRDESC:: eod
Controls address allocation among scopes in the same Network.  When
not enabled or unset, when two scopes with non-zero priority are found
in the same network, an IP address will be allocated from the scope
with the fewest available IP addresses.  When this attribute is
enabled, the IP address will be allocated from the scope with the most
available IP addresses -- in the case where both scopes have the same
non-zero priority.

In the case where two scopes have either zero or unset allocation 
priority (which is the usual case, unless either 
priority-address-allocation is set or allocation-priority for 
each scope is set directly), then this attribute has no effect.
eod

ATTR: collect-addr-util-duration
ATTRID: 192
#ATTRTYPE: AT_RANGETIME(0h-72h)
ATTRTYPE: AT_RANGETIME(0-259200)
ATTRFLAGS: 
ATTRDEFVAL: 0h
ATTRMCDPATH: collect-addr-util-duration
ATTRDESC:: eod
Maximum period, in hours, DHCP server will maintain address 
utilization data.

To disable DHCP server from collecting any address utilization 
data either unset this parameter or set it of 0.

collect-addr-util-duration and collect-addr-util-interval togather
deteremine how frequent snapshots and how long address utilization 
data will be maintained by the DHCP server. Both these parameter 
have impact memory used by the DHCP server. Each snapshot address 
utilization data collected for every collect-addr-util-interval 
is 68 bytes. 

If there are 10 scopes and collect-addr-util-duration is set to
24h and collect-addr-util-interval is set to 1h, memory used by the
DHCP server to maintain address utilization data is 24 times 68 bytes
for each scope (i.e. 10x24x68 or 16K) .

eod

ATTR: collect-addr-util-interval
ATTRID: 193
#ATTRTYPE: AT_RANGETIME(5m-24h)
ATTRTYPE: AT_RANGETIME(300-86400)
ATTRFLAGS: 
ATTRDEFVAL: 15m
ATTRMCDPATH: collect-addr-util-interval
ATTRDESC:: eod
Frequency, in minutes or hours, that the DHCP server should maintain 
address utilization data snapshots.
 
If collect-addr-util-duration is not configured or set to 0, 
collect-addr-util-interval will be ignored.

collect-addr-util-duration and collect-addr-util-interval togather
deteremine how frequent snapshots and how long address utilization 
data will be maintained by the DHCP server. Both these parameter 
have impact memory used by the DHCP server. Each snapshot address 
utilization data collected for every collect-addr-util-interval 
is 68 bytes. 

If there are 10 scopes and collect-addr-util-duration is set to
24h and collect-addr-util-interval is set to 1h, memory used by the
DHCP server to maintain address utilization data is 24 times 68 bytes
for each scope (i.e. 10x24x68 or 16K) .
eod

ATTR: state-db-use-debug-log
ATTRID: 194
ATTRTYPE: AT_BOOL
ATTRVIZ: 3
ATTRDEFVAL: false
ATTRDESC:: eod
If enabled, the DHCP server will open a file called dhcp_db_errs.txt
and use it as the low-level database error log file.
eod

ATTR: ip-history-max-age
ATTRID: 195
ATTRTYPE: AT_TIME
ATTRDEFVAL: 4w
ATTRDESC:: eod
If ip-history is enabled, the DHCP server will accumulate database
records over time as lease bindings change. This parameter establishes
a limit on the age of the history records that will be kept in the
database. The server periodically examines the lease history records,
establishes an age threshold based on this parameter, and deletes any
records that represent bindings that ended before the threshold.
eod

ATTR: ip-history-trim-interval
ATTRID: 196
ATTRTYPE: AT_TIME
ATTRVIZ: 3
ATTRDEFVAL: 86400
ATTRDESC:: eod
If this is not zero and is greater then 1 day (86400 seconds), 
the server will round this value up to an integral number of days, 
and execute history-trimming at 3am at that interval.
If this is not zero and is less than 1 day (86400 seconds), the 
server will schedule history trimming at this interval from the
latest reload of the server (generally, history trimming at
more often that 1 day intervals is not recommended).
If this is zero, the server will not perform history trimming --
and if ip-history is enabled, the history database will continue
to grow without bound.
eod

ATTR: ip-history-detail
ATTRID: 197
ATTRTYPE: AT_BOOL
ATTRDEFVAL: false
ATTRDESC:: eod
Causes the DHCP server to maintain a database that records every
change to a lease binding, including each renewal. This is only
meaningful if ip-history is enabled.
eod

ATTR: ignore-cisco-options
ATTRID: 198
ATTRTYPE: AT_NLIST(AT_STRING)
ATTRVIZ: 5
ATTRDESC:: eod
Causes the server to skip processing of the Cisco-specific DHCP
option(s) specified, by name, in the comma-separated list. The
allowable option names are vpn-id (185), cisco-vpn-id (221), and
cisco-subnet-allocation (220). Use this attribute only if clients
use the options for other purposes on the network.
eod

ATTR: udp-send-packet-size
ATTRID: 201
ATTRHDRNAME: AO_DHCPSERVER_UDPSENDPACKETSIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: UDPSendPacketSize
ATTRDEFVAL: 1400
ATTRVIZ: 3
ATTRDESC:: eod
Limits the maximum size of UDP packets sent by the server. Specified
size includes the IP and UDP headers. Must be less than or equal to
the UDPPacketSize attribute.
eod

ATTR: leasequery-respond-other-available
ATTRID: 227
ATTRTYPE: AT_BOOL
ATTRDEFVAL: FALSE
ATTRVIZ: 3
ATTRDESC:: eod
Controls leasequery response under certain specific
conditions.  If the server is in NORMAL failover state, and
the lease is in other-available state, and the secs field in
the packet is zero (indicating that this is not a
retransmission), then this DHCP server will not respond to
the leasequery response, since the other server may well
have leased the lease and not yet communicated that fact to
this server.
eod

ATTR: leasequery-delay-backup-response
ATTRID: 228
ATTRTYPE: AT_RANGEINT(0-1000)
ATTRDEFVAL: 500
ATTRVIZ: 3
ATTRDESC:: eod
Controls leasequery response under certain specific
conditions.  If a leasequery request is received and the the
server is in NORMAL failover state, and the data in the
server indicates that the other failover server was the one
to most recently interact with the DHCP client, and the secs
field in the packet is zero (indicating that this is not a
retransmission), then this DHCP server will delay its
response by the number of milliseconds configured in the
attribute.
eod

#
# end D H C P Server
# end of DHCP Server
# end DHCP
#

########################################
# S c o p e
# S C O P E
########################################


CLASS: Scope
CLASSROOT: SCOPE
CLASSID: 1101
CLASSNAME: 1
CLASSNAMEDESC:: eod
The names of Scope objects are arbitrarily chosen by the user, and
must be unique.  There is no semantic value associated with the name.
eod
CLASSVIZ: 5
CLASSDESC:: eod
A DHCP Scope object, containing reserved and generally available
addresses on a specified subnet
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_SCOPE_NAME
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED, AF_UNIQUE
ATTRMCDPATH: Name
ATTRVIZ: 3
ATTRDESC:: eod
The name of the scope object.
eod

ATTR: addr
ATTRID: 2
ATTRHDRNAME: AO_SCOPE_NETADDR
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: IPAddr
ATTRVIZ: 5
ATTRDESC:: eod
The address of the subnet for which the scope contains addresses.
eod

ATTR: mask
ATTRID: 3
ATTRHDRNAME: AO_SCOPE_NETMASK
ATTRTYPE: AT_MASK
ATTRMCDPATH: NetMask
ATTRVIZ: 5
ATTRDESC:: eod
The subnet mask associated with the scope's network address.
eod

ATTR: ranges
ATTRID: 4
ATTRHDRNAME: AO_SCOPE_RANGES
ATTRTYPE: AT_DICT(AT_BLOB)
#ATTRTYPE: AT_DICT(AT_STRING)
ATTRFLAGS: AF_NOTREE
ATTRMCDPATH: ranges
ATTRVIZ: 3
ATTRDESC:: eod
The ranges of addresses that are available for leasing to clients.
Ranges are manipulated with the addRange and removeRange configuration
commands.
eod

ATTR: policy
ATTRID: 5
ATTRHDRNAME: AO_SCOPE_POLICY
ATTRTYPE: AT_NAMEREF(Policy)
ATTRVAL: 1102
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: Policy
ATTRDEFVAL: default
ATTRVIZ: 5
ATTRDESC:: eod
The name of the policy associated with this scope.
eod

ATTR: primary-scope
ATTRID: 6
ATTRHDRNAME: AO_SCOPE_PRIMARYSCOPE
ATTRTYPE: AT_NAMEREF(Scope)
ATTRVAL: 1101
ATTRMCDPATH: PrimaryScope
ATTRVIZ: 5
ATTRDESC:: eod
The name of this scope's primary scope (if this is a secondary scope).
You need to specify a primary scope if you have multiple logical
subnets on the same physical network segment, and if you allow DHCP
to offer addresses from any of the subnets.  The 'scope <scopename>
unset primary-scope' command can be used to remove the primary-scope
relationship.
eod

ATTR: primary-addr
ATTRID: 7
ATTRHDRNAME: AO_SCOPE_PRIMARYSCOPEADDR
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: PrimaryIPAddr
ATTRVIZ: 5
ATTRDESC:: eod
The ip address of this scope's primary scope (if this is a secondary
scope).
eod

ATTR: primary-mask
ATTRID: 8
ATTRHDRNAME: AO_SCOPE_PRIMARYSCOPEMASK
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: PrimaryNetMask
ATTRVIZ: 5
ATTRDESC:: eod
The subnet mask of this scope's primary scope (if this is a secondary
scope).
eod

ATTR: NetworkId
ATTRID: 9
ATTRHDRNAME: AO_SCOPE_NETWORKID
ATTRTYPE: AT_INT
ATTRMCDPATH: NetworkId
ATTRVIZ: 1
ATTRDESC:: eod
Not used currently.
eod

ATTR: ping-timeout
ATTRID: 10
ATTRHDRNAME: AO_SCOPE_PINGTIMEOUT
ATTRTYPE: AT_INT
ATTRFLAGS: AF_INITIALIZE
ATTRMCDPATH: PingTimeout
ATTRDEFVAL: 300
ATTRVIZ: 5
ATTRFEAT: 11
ATTRDESC:: eod
The number of milliseconds the DHCP server should wait for ping
responses.  If you make this value too large, you will slow down the
lease offering processes. If you make this value too small, you will
reduce the effectiveness of pinging addresses before offering them.
eod

ATTR: ping-clients
ATTRID: 11
ATTRHDRNAME: AO_SCOPE_PINGCLIENTS
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: PingClients
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether the server should attempt to ping
addresses before offering leases.
eod

ATTR: dns-server-addr
ATTRID: 12
ATTRHDRNAME: AO_SCOPE_DNSSERVERADDRESS
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: DnsServerAddress
ATTRVIZ: 5
ATTRFEAT: 16
ATTRDESC:: eod
The address of the primary DNS server for the zone into which the
server should add A records.
eod

ATTR: dns-zone-name
ATTRID: 13
ATTRHDRNAME: AO_SCOPE_DNSZONENAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: DnsZoneName
ATTRVIZ: 5
ATTRFEAT: 16
ATTRDESC:: eod
The name of the DNS zone to which a DHCP client's host name
should be added (A record).
eod

ATTR: dns-reverse-zone-name
ATTRID: 14
ATTRHDRNAME: AO_SCOPE_DNSREVERSEZONENAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: DnsReverseZoneName
ATTRVIZ: 5
ATTRFEAT: 16
ATTRDESC:: eod
The name of the reverse (in-addr.arpa) zone that is updated with PTR
records.

If a scope is configured with a reverse zone name string, DHCP will
always use it. Alternately, if synthesize-reverse-zone is enabled and
a scope does not have a dns-reverse-zone-name, DHCP server will use
the lease IP address and scope's dns-host-bytes to automatically
generate a reverse zone name for Dynamic DNS update.

eod

ATTR: synthetic-name-stem
ATTRID: 15
ATTRHDRNAME: AO_SCOPE_DNSSYNTHETICNAMESTEM
ATTRTYPE: AT_STRING
ATTRMCDPATH: DnsSyntheticNameStem
ATTRVIZ: 5
ATTRFEAT: 17
ATTRDESC:: eod
The stem of the default host name to use if clients do not
supply host names.
eod

ATTR: dynamic-dns
ATTRID: 16
ATTRHDRNAME: AO_SCOPE_DNSUPDATE
ATTRTYPE: AT_ENUMBYTE(update-none=0, update-all=1, update-fwd-only=2, update-rev-only=3)
ATTRFLAGS: AF_FEATURE, AF_PRINT_ALT
ATTRDEFVAL: update-none
ATTRMCDPATH: DnsUpdate
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether the DHCP server should attempt to update a
DNS server with the name and address information from leases that
are granted to requesting clients.
eod

ATTR: synthesize-name
ATTRID: 17
ATTRHDRNAME: AO_SCOPE_DNSSYNTHESIZENAME
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: DnsSynthesizeName
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether the DHCP server automatically creates DNS host
names for DHCP clients who do not provide names. The server
can synthesize unique names for clients based on the 'synthetic
name stem' attribute.
eod

ATTR: update-dns-first
ATTRID: 18
ATTRHDRNAME: AO_SCOPE_DNSUPDATEFIRST
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: DnsUpdateFirst
ATTRVIZ: 5
ATTRFEAT: 16
ATTRDESC:: eod
Controls whether the DNS server is updated before
the lease is granted.
eod

ATTR: dns-host-bytes
ATTRID: 19
ATTRHDRNAME: AO_SCOPE_DNSNUMBEROFHOSTBYTES
ATTRTYPE: AT_RANGEINT(1-4)
ATTRMCDPATH: DnsNumberOfHostBytes
ATTRVIZ: 5
ATTRFEAT: 16
ATTRDESC:: eod
This value tells DHCP how many of the bytes in a lease's IP address to
use when forming in-addr.arpa names. The server forms names in the
in-addr zone by prepending dns-host-bytes of IP address (in reverse
order) to the reverse zone name.

If this is unset, the server will synthesize an appropriate value
based on the scope's subnet size.
eod

# deprecated - not used in cnr 5+
ATTR: available-lease-hint-size
ATTRID: 20
ATTRHDRNAME: AO_SCOPE_AVAILABLELEASEHINTSIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: AvailableLeaseHintSize
ATTRVIZ: 1

ATTR: bootp
ATTRID: 21
ATTRHDRNAME: AO_SCOPE_ALLOWBOOTP
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: AllowBootp
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether the server will accept BOOTP requests
for this scope. If you want clients to always receive the
same addresses, you need to reserve IP addresses for all your
BOOTP clients.
eod


ATTR: dynamic-bootp
ATTRID: 22
ATTRHDRNAME: AO_SCOPE_ALLOWDYNAMICBOOTP
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: AllowDynamicBootp
ATTRVIZ: 5
ATTRFEAT: 21
ATTRDESC:: eod
Controls whether the server will accept dynamic BOOTP
requests for this scope.  Dynamic BOOTP requests are BOOTP requests
that do not match a reservation, but could be satisfied from the
available lease pool. To use this feature you must also enable bootp.
eod

ATTR: allow-lease-time-override
ATTRID: 23
ATTRHDRNAME: AO_SCOPE_ALLOWLEASETIMEOVERRIDE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: AllowLeaseTimeOverride
ATTRVIZ: 1
ATTRDESC:: eod
NA - this is actually a Policy attribute, not a Scope attribute.
eod

ATTR: SelectionMask
ATTRID: 24
ATTRHDRNAME: AO_SCOPE_SELECTIONMASK
ATTRTYPE: AT_INT
ATTRMCDPATH: SelectionMask
ATTRVIZ: 0
ATTRDESC:: eod
No longer used.
eod

ATTR: bootp-reply-options
ATTRID: 25
ATTRHDRNAME: AO_SCOPE_BOOTPREPLYPARAMETERS
# null terminated blob
ATTRTYPE: AT_STRING
ATTRMCDPATH: BootpReplyParameters
ATTRVIZ: 1
ATTRDESC:: eod
Deprecated, and no longer significant to the server.  The 
specification of which options should be sent back to BOOTP
(and force to DHCP) requests is now provided on a per-policy
basis.  These attributes are 16 and 17 on the Policy object 
(dhcp-reply-options and bootp-reply-options).
eod

#
# DEPRECATED - don't use this, use 'reservation-list' instead
#
ATTR: ReservationList
ATTRID: 26
ATTRHDRNAME: AO_SCOPE_RESERVATIONLISTXXX
ATTRTYPE: AT_LISTREF(Reservation)
ATTRMCDPATH: ReservationList
DEPRECATED: 2.0
ATTRVAL: 1107
ATTRVIZ: 0
ATTRDESC:: eod
Don't use this, use 'reservation-list' instead.
eod

ATTR: reservations-override-leases
ATTRID: 27
ATTRHDRNAME: AO_SCOPE_RESERVATIONS_OVERRIDE_LEASES
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: ReservationsOverrideLeases
ATTRVIZ: 3
ATTRDESC:: eod
Controls the server's behavior if it finds a reservation for an
ip address which is leased to a different client. If this is
enabled, the server will delete the existing lease binding.
eod

ATTR: reservations-configure-leases
ATTRID: 28
ATTRHDRNAME: AO_SCOPE_RESERVATIONS_CONFIGURE_LEASES
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: ReservationsConfigureLeases
ATTRVIZ: 3
ATTRDESC:: eod
Controls whether a reservation will be configured even if the ip
address that it refers to is not present in any range. The
reservation will be configured only if the ip address is valid
on the scope's ip subnet.
eod

ATTR: LeaseList
ATTRID: 29
ATTRHDRNAME: AO_SCOPE_LEASELIST
ATTRTYPE: AT_LISTREF(Lease)
ATTRMCDPATH: LeaseList
ATTRVAL: 1108
ATTRVIZ: 0
ATTRDESC:: eod
There is no direct reference from a Scope object to its leases.
eod

# ATTR 30 not used

# ATTR 31 has been deprecated

ATTR: inverse-dns-addr
ATTRID: 31
ATTRHDRNAME: AO_SCOPE_DNSREVERSESERVERADDRESS
ATTRTYPE: AT_IPADDR
ATTRVIZ: 1
ATTRDESC:: eod
The address of the DNS server that should be updated with inverse
(in-addr.arpa) information.
eod

ATTR: selection-tags
ATTRID: 32
ATTRHDRNAME: AO_SCOPE_SELECTION_CRITERIA
ATTRTYPE: AT_ARRAY(AT_STRING)
ATTRMCDPATH: SelectionCriteria
ATTRVIZ: 5
ATTRDESC:: eod
The list of selection criteria associated with a scope. The scope
compares a client's selection criteria to this list in order to 
determine whether the client can obtain a lease from the scope.
eod

ATTR: renew-only
ATTRID: 33
ATTRHDRNAME: AO_SCOPE_AVAILABLE_CLOSED
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: AvailableClosed
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether to allow existing clients to reacquire their leases,
but not offer any leases to new clients.  Note that a 'renew-only'
scope will not change the client associated with any of its leases
(other than to allow a client currently using what the server believes
is an available IP address to continue using it).
eod

ATTR: renew-only-reservations
ATTRID: 34
ATTRHDRNAME: AO_SCOPE_AVAILABLE_CLOSED_RESERVATIONS
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: AvailableClosedReservations
ATTRVIZ: 3
ATTRDESC:: eod
Controls the renew-only capability for clients with reservations.  If
this is not set (the default), the clients with reservations will
always be allowed to acquire leases in this scope.  If this is set,
then even clients with reservations will be required to renew a lease
that appeared available to the server before being allowed to use it.
eod

ATTR: renew-only-expire-time
ATTRID: 35
ATTRHDRNAME: AO_SCOPE_AVAILABLE_CLOSED_EXPIRETIME
ATTRTYPE: AT_DATE
ATTRMCDPATH: AvailableClosedExpireTime
ATTRVIZ: 3
ATTRDESC:: eod
If this time is set, then both renew-only and
renew-only-reservations will stop being true once
the renew-only-expire time has passed.
eod

ATTR: deactivated
ATTRID: 36
ATTRHDRNAME: AO_SCOPE_DEACTIVATED
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: Deactivated
ATTRVIZ: 5
ATTRDESC:: eod
A deactivated scope will not extend leases to any clients. It treats
all of the addresses in its ranges as if they were individually
deactivated.
eod

ATTR: dns-rev-server-addr
ATTRID: 37
ATTRHDRNAME: AO_SCOPE_DNSREVSERVERADDRESS
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: DnsReverseServerAddress
ATTRVIZ: 5
ATTRFEAT: 16
ATTRDESC:: eod
The address of the primary DNS server for the zone into which the
server should add PTR records.
eod

ATTR: dhcp
ATTRID: 38
ATTRHDRNAME: AO_SCOPE_ALLOWDHCP
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: AllowDhcp
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether the server will accept DHCP requests
for this scope. Typically, this is only disabled when
bootp is enabled for that scope, to allow only a scope
to be used exclusively for BOOTP.
eod

ATTR: update-dns-for-bootp
ATTRID: 39
ATTRHDRNAME: AO_SCOPE_UPDATEDNSFORBOOTP
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: UpdateDnsForBootp
ATTRVIZ: 5
ATTRDESC:: eod
If the server is replying to a BOOTP request, and is offering a lease
from a Scope which is configured to perform DNS updates, it will check
this property before beginning the DNS update. This feature allows
an administrator to prevent DNS updates for BOOTP clients, while
allowing updates for DHCP clients.

'Update-dns-for-bootp' can be controlled globally with the 'server'
command; that global command can be overridden by individual Scopes
as necessary.
eod

ATTR: use-release-grace-period
ATTRID: 40
ATTRHDRNAME: AO_SCOPE_USE_RELEASE_GRACE_PERIOD
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRMCDPATH: use-release-grace-period
ATTRDEFVAL: false
ATTRVIZ: 3
ATTRDESC:: eod
Controls whether the scope's default is to delay the effect
of RELEASE messages from clients. If this switch is set,
all RELEASE messages for leases in this scope will be delayed
by a Policy's 'release-grace-period' attribute.  During the grace
period, the client's lease won't be made available for any other
client.
eod

ATTR: failover-main-server
ATTRID: 45
ATTRHDRNAME: AO_SCOPE_FAILOVER_MAIN_SERVER
ATTRTYPE: AT_STRING
ATTRMCDPATH: failover-main-server
ATTRVIZ: 5
ATTRDESC:: eod
The DNS name of the main server associated with this lan
segment.  If this DNS name resolves to the IP address of the
current server, then this server will operate as the main server
for this scope.  It is an error if both the main and backup
server names resolve to the IP addresses which reside on the
same server.  If the backup-server-name is the distinguished
name "local" or is not configured on this scope or in the
server-wide default, then this server is considered to be the
main server for this scope.  Configuring either a
main-server-name or a backup-server-name will enable failover.
eod

ATTR: failover-backup-server
ATTRID: 46
ATTRHDRNAME: AO_SCOPE_FAILOVER_BACKUP_SERVER
ATTRTYPE: AT_STRING
ATTRMCDPATH: failover-backup-server
ATTRVIZ: 5
ATTRDESC:: eod
The DNS name of the backup server associated with this lan
segment.  If this DNS name resolves to the IP address of the
current server, then this server will operate as the backup
server for this scope.  It is an error if both the main and
backup server names resolve to the IP addresses which reside on
the same server.  If the main-server-name is the distinguished
name "local" or is not configured in either this scope or the
server-wide default, then this server is considered to be the
backup server for this scope.  Configuring either a
main-server-name or a backup-server-name will enable failover.
eod

ATTR: old-failover-backup-percentage
ATTRID: 47
ATTRHDRNAME: AO_SCOPE_FAILOVER_BACKUP_PERCENTAGE
ATTRTYPE: AT_INT
ATTRMCDPATH: failover-backup-percentage
ATTRVIZ: 1
ATTRDESC:: eod
This was originally added to the data dictionary intending that
it would be the scope parameter that would allow a user to
configure the failover-backup-percentage.  However, in the
initial release it was not turned on, but rather made visibility
1.  It was given a default of 10, and so despite its visibility
it ended up in many scopes in the field in real configurations.
Now, when we want to really use it, it cannot simply be made
visibility 5, since it exists in those existing databases.  The
way we want to use it, if it exists, then it will override the
the globally configured value.  So we deprecate this MCD path,
and change the name of the attribute from
failover-backup-percentage to old-failover-backup-percentage, so
we can reuse the attribute name of failover-backup-percentage
with a new attribute/parameter that has a different (and new) MCD
path.
eod

ATTR: failover-maximum-client-lead-time
ATTRID: 48
ATTRHDRNAME: AO_SCOPE_FAILOVER_MCLT
ATTRTYPE: AT_TIME
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 3600
ATTRMCDPATH: failover-mclt
ATTRVIZ: 1
ATTRDESC:: eod
This is maximum client lead time, in seconds.  The "MCLT" controls
how much ahead of the backup server the client's lease expiration can
be.  It must be defined for the scope in the main and backup servers.
Both the main and backup must be configured with identical values for
proper operation.
eod

ATTR: failover-lease-period-factor
ATTRID: 49
ATTRHDRNAME: AO_SCOPE_FAILOVER_LEASE_PERIOD_MULTIPLE
ATTRTYPE: AT_INT100
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 1.50
ATTRMCDPATH: failover-lease-period-factor
ATTRVIZ: 1
ATTRDESC:: eod
The multiple of the desired lease period used to update the backup
server when the main server informs it of a new DHCP client lease
period.  A value of 1.00 would be the same as the lease period that
the main would like to give the DHCP client.  A value of 2.00 would 
be twice the lease period the main would like to give the client.  
The lease-period-factor controls how much ahead of the client the
backup server's idea of the lease expiration can be.  The larger this
value, the more the main is independent of the operation of the backup
and the less performance impact the failover protocol has on the main
server performance.  However, the larger this value, the longer the
backup will have to wait to time out an expired lease and re-use it
for a different client in the event that the main fails and the backup
takes over all DHCP functions.  This attribute must be defined in the
for the scope in the main server.  If it is defined in a backup 
server, it is ignored (to enable copying of configurations).
eod

ATTR: failover-use-safe-period
ATTRID: 50
ATTRHDRNAME: AO_SCOPE_FAILOVER_USE_SAFE_PERIOD
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRMCDPATH: failover-use-safe-period
ATTRDEFVAL: false
ATTRVIZ: 1
ATTRDESC:: eod
If use-safe-period is disabled, then a server will never go into
PARTNER-DOWN state without an operator command.  It must be
defined for the scope in the main server.  If it is
defined in a backup server, it is ignored (to enable copying of
configurations).
eod

ATTR: failover-safe-period
ATTRID: 51
ATTRHDRNAME: AO_SCOPE_FAILOVER_SAFE_PERIOD
ATTRTYPE: AT_TIME
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 3600
ATTRMCDPATH: failover-safe-period
ATTRVIZ: 1
ATTRDESC:: eod
This is the safe period, in seconds.  It does not have to be
the same on both main and backup servers.  It only has meaning if
use-safe-period is enabled.  It must be defined for the scope in the
main server.  If it is defined in a backup server, it is ignored (to
enable copying of configurations).
eod

ATTR: failover-recover
ATTRID: 52
ATTRHDRNAME: AO_SCOPE_FAILOVER_RECOVER
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_INITIALIZE
ATTRMCDPATH: failover-recover
ATTRDEFVAL: false
ATTRVIZ: 1
ATTRDESC:: eod
If recover is disabled, then the server will perform
initialization (if there is any state), and then will go into
RECOVER state.  This state assumes that the other server was
running, and attempts to refresh its state from that of the
other server.

This should be deprecated even it we wanted it to be
something other than viz 1, because it makes no sense
for part of a server to be set to recover.
eod

ATTR: failover-persist-lease-data-on-partner-ack
ATTRID: 53
ATTRHDRNAME: AO_SCOPE_FAILOVER_WRITE_MCD_ON_LEASE_DATA_ACK
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_INITIALIZE
ATTRMCDPATH: failover-persist-lease-data-on-partner-ack
ATTRDEFVAL: true
ATTRVIZ: 1
ATTRDESC:: eod
Normally, the main server will update MCD whenever the backup
server ACK's it with what the backup knows.  Disabling this
capability will speed up the main server, with the downside that
after restart of the main server it won't know what the backup
knows, and may offer all clients one lease period with a renew
time of the current time plus the MCLT.
eod

ATTR: failover
ATTRID: 54
ATTRHDRNAME: AO_SCOPE_FAILOVER
ATTRTYPE: AT_ENUMINT(scope-enabled=1,scope-disabled=2,use-server-settings=3)
ATTRFLAGS: AF_PRINT_ALT, AF_INITIALIZE
ATTRMCDPATH: failover
ATTRDEFVAL: use-server-settings
ATTRVIZ: 5
ATTRDESC:: eod
If set to scope-enabled, this scope will engage in failover as it has
been configured to do so.  If set to use the server's settings, then
it will be configured according to the server's global failover
parameters.  If set to scope-disabled, this scope will not engage in
failover at all.
eod

# Scope ATTRID 55-58: trap features and properties
ATTR: trap-free-address-low
ATTRID: 55
ATTRHDRNAME: AO_SCOPE_TRAP_FREEADDRESSLOW
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: TrapFreeAddressLow
ATTRVIZ: 5
ATTRDESC:: eod
Send trap on FreeAddress below low threshold
eod

ATTR: trap-free-address-high
ATTRID: 56
ATTRHDRNAME: AO_SCOPE_TRAP_FREEADDRESSHIGH
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: TrapFreeAddressHigh
ATTRVIZ: 5
ATTRDESC:: eod
Send trap on FreeAddress above high threshold
eod

ATTR: trap-free-address-low-threshold
ATTRID: 57
ATTRHDRNAME: AO_SCOPE_TRAP_FREEADDRESSLOWTHRESHOLD
ATTRTYPE: AT_STRING
ATTRMCDPATH: TrapFreeAddressLowThreshold
ATTRVIZ: 5
ATTRDESC:: eod
A number, or (if terminated with a %) percentage, of addresses free
at which point the free-address trap is generated
eod

ATTR: trap-free-address-high-threshold
ATTRID: 58
ATTRHDRNAME: AO_SCOPE_TRAP_FREEADDRESSHIGHTHRESHOLD
ATTRTYPE: AT_STRING
ATTRMCDPATH: TrapFreeAddressHighThreshold
ATTRVIZ: 5
ATTRDESC:: eod
A number, or (if terminated with a %) percentage, of addresses free
at which point a free-address-high trap is generated and the
free-address trap is re-enabled.
eod

ATTR: embedded-policy
ATTRID: 59
ATTRHDRNAME: AO_SCOPE_EMBEDDED_POLICY
ATTRTYPE: AT_OBJ(Policy)
ATTRMCDPATH: embedded-policy
ATTRVIZ: 5
ATTRDESC:: eod
The embedded policy object for this scope.
eod

ATTR: failover-backup-percentage
ATTRID: 60
ATTRHDRNAME: AO_SCOPE_NEW_FAILOVER_BACKUP_PERCENTAGE
ATTRTYPE: AT_INT
ATTRMCDPATH: failover-new-backup-percentage
ATTRVIZ: 5
ATTRDESC:: eod
The percentage of available addresses that the main server should
send to the backup server.  If defined for a scope, it must be
defined for the scope in the main server.  If it is defined in a
backup server, it is ignored (to enable copying of
configurations).  If it is defined, the defined value will
override the server defined values for failover-backup-percentage
and failover-dynamic-bootp-backup-percentage, and the value
defined here is the value that will be used for this scope,
whether or not this scope supports dynamic-bootp.  If it is
defined as zero (0), then no addresses will be sent to the backup
server.  Since zero is a significant value, once defined, this
parameter must be unset in order for this scope to utilize the
server-wide default values for failover-backup-percentage or
failover-dynamic-bootp-backup-percentage.
eod

#
# DEPRECATED - this is the pre-6.0 reservation list attr
#
ATTR: reservation-dictionary
ATTRID: 61
ATTRHDRNAME: AO_SCOPE_RESERVATIONDICT
ATTRTYPE: AT_DICT(AT_BLOB)
#ATTRTYPE: AT_DICT(AT_STRING)
ATTRFLAGS: AF_NOTREE
ATTRMCDPATH: reservation-list
DEPRECATED: 4.0
ATTRVIZ: 0
ATTRDESC:: eod
This is the pre-6.0 reservation list attr.
eod

ATTR: lease-count
ATTRID: 62
ATTRHDRNAME: AO_SCOPE_LEASE_COUNT
ATTRTYPE: AT_INT
ATTRMCDPATH: lease-count
ATTRVIZ: 3
ATTRDESC:: eod
Number of leases configured in a scope. This is a read-only attribute.
eod

ATTR: reservation-count
ATTRID: 63
ATTRHDRNAME: AO_SCOPE_RESERVATION_COUNT
ATTRTYPE: AT_INT
ATTRMCDPATH: reservation-count
ATTRVIZ: 3
ATTRDESC:: eod
Number of reservations configured in a scope. This is a read-only 
attribute.
eod

ATTR: version
ATTRID: 64
ATTRHDRNAME: AO_SCOPE_VERSION
ATTRTYPE: AT_INT
ATTRMCDPATH: version
ATTRVIZ: 3
ATTRDESC:: eod
The (internal) version of the scope data blob.
eod

ATTR: secondary-scope-list
ATTRID: 65
ATTRHDRNAME: AO_SCOPE_SECONDARY_SCOPE_LIST
ATTRTYPE: AT_ARRAY(AT_STRING)
ATTRMCDPATH: secondary-scope-list
ATTRVIZ: 3
ATTRDESC:: eod
A list of the names of the scopes for which this scope is the
primary scope.
eod

ATTR: lan-segment
ATTRID: 66
ATTRHDRNAME: AO_SCOPE_LAN_SEGMENT
ATTRTYPE: AT_STRING
ATTRMCDPATH: lan-segment
ATTRVIZ: 1
ATTRDESC:: eod
This has been deprecated, but might come back someday.
10/23/01 kkinnear
A string representing the lan segment within which this scope resides.
This scope will become part of a 'Network' which will contain all of 
the other scopes which have a matching lan-segment attribute.  This
overrides the value for primary-scope, primary-addr, and primary-mask.
It also overrides the implict association of any other scope which has
an identical network number and subnet mask.  This scope will only
aggregate together with other scopes which have an identical
lan-segment property.  A value which is the null string is equivalent
to being unset.
eod

ATTR: use-dns-update-prereqs
ATTRID: 67
ATTRHDRNAME: AO_SCOPE_USE_DNS_PREREQS
ATTRTYPE: AT_BOOL
ATTRVIZ: 1
ATTRDEFVAL: true
ATTRDESC:: eod
DEPRECATED - not currently implemented for scope class
By default, the DHCP server uses prerequisites in its DNS update
messages when it is performing DNS updates on behalf of clients. If
this parameter is 'false', the server will not include prerequisites
when performing updates for leases from this scope. Without them, the
last client who uses a given domain name will be associated with
that name, even if another client was already associated with the
name.
eod

ATTR: namespace-id
ATTRID: 68
ATTRHDRNAME: AO_SCOPE_NAMESPACE_ID
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REFERENCE, AF_IMMUTABLE
# Encode attribute 4 of Namespace(1127) as 4<<16 + 1127 == 263271
ATTRVAL: 263271
ATTRDESC:: eod
The id of the dhcp namespace that contains this scope.  The
namespace-id of a scope can be set in three ways: (1) when the scope
is created it is automatically assigned the namespace-id of the
session's current-namespace; (2) the namespace-id of the scope may be
set directly with set namespace-id=<namespace-id>; (3) the command
scope <scope-name> set namespace=<namespace-name> will set the
namespace-id of the scope to the namespace-id of <namespace-name>.
eod

ATTR: subnet
ATTRID: 69
ATTRTYPE: AT_SUBNET
ATTRFLAGS: AF_REQUIRED
ATTRDESC:: eod
The network address of the IP subnet represented by the scope.
eod

# the new (for JackSprat) list of reservations,
ATTR: reservation-list
ATTRID: 70
ATTRTYPE: AT_NLIST(AT_OBJ(Reservation))
# 1<<16 | 1107
ATTRVAL: 66643
ATTRVIZ: 3
ATTRDESC:: eod
The reservations for this Scope.
eod

# the new (for JackSprat) list of ranges
ATTR: range-list
ATTRID: 71
ATTRTYPE: AT_NLIST(AT_OBJ(Range))
# 1<<16 | 1130
ATTRVAL: 66666
ATTRVIZ: 3
ATTRDESC:: eod
The ranges that are part of this Scope.
eod

ATTR: primary-subnet
ATTRID: 72
ATTRTYPE: AT_SUBNET
ATTRDESC:: eod
The subnet number of a scope's primary scope, used when multiple
logical IP subnets are present on the same physical network.
eod

# a reference to a CCMScopeTemplate (with the OID from the CCM datastore)
ATTR: scope-template
ATTRID: 73
# ATTRTYPE: AT_OBJREF(CCMScopeTemplate)
ATTRFLAGS: AF_REFERENCE	
ATTRTYPE: AT_OID
ATTRVAL: 1426
ATTRVIZ: 1
ATTRDESC:: eod
The scope template used to create this scope.  May not be
set, even if the scope was created from a template.  If the
template is managed on a remote (regional) cluster, the
OID reference would make no sense.
eod

ATTR: dynamic-dns-fwd-key
ATTRID: 76
ATTRTYPE: AT_DNSNAME
ATTRMCDPATH: ddns-fwd-key
ATTRVIZ: 5
ATTRDESC:: eod
The TSIG key to be used in processing dynamic DNS updates of forward
zones for all leases that are in a scope.
eod

ATTR: dynamic-dns-rev-key
ATTRID: 77
ATTRTYPE: AT_DNSNAME
ATTRMCDPATH: ddns-rev-key
ATTRVIZ: 5
ATTRDESC:: eod
The TSIG key to be used in processing dynamic DNS updates of reverse
zones for all leases that are in a scope.
eod

ATTR: dynamic-dns-tsig
ATTRID: 78
ATTRTYPE: AT_ENUMINT(enable-fwd-and-rev=1,disable-fwd-and-rev=2,enable-fwd-only=3,enable-rev-only=4,use-server-settings=5)
ATTRFLAGS: AF_PRINT_ALT
ATTRDEFVAL: use-server-settings
ATTRMCDPATH: dynamic-dns-tsig
ATTRVIZ: 5
ATTRDESC:: eod
This attribute controls whether TSIG is used for DNS updates for the
scope.

If set to 'enable-fwd-and-rev' or 'disable-fwd-and-rev' TSIG will be
or will not be used for both forward and reverse zone updates
respectively. If set to 'enable-fwd-only' or 'enable-rev-only', TSIG
will be used for forward or reverse updates alone.

A scope level setting, if configured, will override the DHCP server
level attribute value.
eod

ATTR: ignore-declines
ATTRID: 79
ATTRHDRNAME: AO_SCOPE_IGNORE_DECLINES
ATTRTYPE: AT_BOOL
ATTRDEFVAL: false
ATTRMCDPATH: ignore-declines
ATTRVIZ: 5
ATTRDESC:: eod
This attribute controls whether the DHCP server will process a
DHCPDECLINE request referencing an IP address in this scope.  If
this attribute is enabled, then the DHCP server will ignore all
declines which reference an IP address in this scope.  If this
attribute is not set, the DHCP server will set to UNAVAILABLE
every IP address which is referenced in a DHCPDECLINE message.
The default value is false, so that DHCPDECLINE messages are
processed normally, and the IP addresses referenced in these
DHCPDECLINE messages are set to UNAVAILABLE.
eod

ATTR: allocation-priority
ATTRID: 80
ATTRHDRNAME: AO_SCOPE_ALLOCATION_PRIORITY
ATTRTYPE: AT_INT
ATTRDEFVAL: 0
ATTRVIZ: 5
ATTRDESC:: eod
You can use the allocation-priority to assign an ordering to scopes,
such that allocation of IP addresses will take place from acceptable
scopes with a higher priority until the IP addresses in all those
scopes are exhausted.  An allocation-priority of 0 is treated as not
having an allocation-proiority.  You can mix scopes with an
allocation-priority along with those without an allocation-priority
(or with an allocation-priority of 0, which is the same thing) in the
same network.  In this case, the scopes with an allocation priority
will be examined for acceptability prior to those scopes with no
allocation-priority (or an allocation-priority of 0).

If this attribute is not set (unset), then the allocation-priority of
the scope will be controlled by the DHCP server attribute
priority-address-allocation.  If priority-address-allocation is set
(and allocation-priority for the scope is not set (unset)), then the
allocation-priority for the scope will be the network number of the
scope.  If allocation-priority has been explicitly configured for a
scope, then for that scope the setting of priority-address-allocation
has no meaning.
eod

ATTR: allocate-first-available
ATTRID: 81
ATTRHDRNAME: AO_SCOPE_ALLOCATE_FIRST_AVAILABLE
ATTRTYPE: AT_BOOL
ATTRDEFVAL: false
ATTRVIZ: 5
ATTRDESC:: eod
This boolean attribute forces all allocation of new IP addresses from
this scope to be made from the first available IP address, rather than
the default of the "least recently used" IP address.

If this attribute is not set (unset), then the decision on whether to
allocate the first available IP address in the scope will be
controlled by the DHCP server attribute priority-address-allocation.
If priority-address-allocation is set (and allocate-first-available
for the scope is not set (unset)), then the scope will allocate
addresses as if allocate-first-available was set.  If
allocate-first-available has been explicitly configured (either
enabled or disabled) for a scope, then for that scope the setting of
priority-address-allocation has no meaning.
eod

ATTR: failover-backup-allocation-boundary
ATTRID: 82 
ATTRHDRNAME: AO_SCOPE_FAILOVER_BACKUP_ALLOCATION_BOUNDARY
ATTRTYPE: AT_IPADDR
ATTRVIZ: 5
ATTRDESC:: eod
If allocate-first-available is configured, and this scope participates
in a failover relationship, this value is the IP address boundary 
below which which the failover backup servers IP addresses are 
allocated.  Normal client IP addresses are allocated in ascending
order, while the backup server's IP addresses are allocated in
decending order from this boundary.  If it is unset or zero, then 
the boundary used for this allocation is 1/2 of the distance between
the first and last IP address configured in the ranges for this scope.
If there are no IP addresses available below this boundary, then the
first IP address available above this boundary is used.
eod

# not used yet (as of 6.1)...
ATTR: selection-tag-list
ATTRID: 83
ATTRTYPE: AT_NLIST(AT_STRING)
ATTRVIZ: 1
ATTRVAL: 5
ATTRDESC:: eod
The list of selection tags to associate with a scope.
eod

# end of SCOPE

########################################
# P o l i c y
# POLICY
# P O L I C Y
########################################


CLASS: Policy
CLASSROOT: POLICY
CLASSID: 1102
CLASSNAME: 1
CLASSNAMEDESC:: eod
The names of Policy objects are arbitrarily chosen by the user, and
must be unique.  There are two distinguished Policy objects, named
'default' and 'system_default_policy'.  If a Scope is created without
specifying a Policy, it will be given the Policy named 'default'. All
Policy objects implicitly inherit the option values specified in the
Policy 'system_default_policy'.
eod
CLASSVIZ: 5
CLASSDESC:: eod
A DHCP Policy object, containing a set of DHCP Options
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_POLICY_NAME
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED, AF_UNIQUE
ATTRMCDPATH: name
ATTRVIZ: 3
ATTRDESC:: eod
The name of the policy. Scopes, client-entries, and client-classes
refer to policies by name.
eod

ATTR: offer-timeout
ATTRID: 2
ATTRHDRNAME: AO_POLICY_OFFERTIMEOUT
ATTRTYPE: AT_TIME
ATTRFLAGS: AF_INITIALIZE
ATTRMCDPATH: OfferTimeout
ATTRVIZ: 5
ATTRDEFVAL: 120
ATTRDESC:: eod
If the server offers a lease to a client, but the offer is not
accepted, the server will wait the specified number of seconds before
making the lease 'available' again.
eod

ATTR: grace-period
ATTRID: 3
ATTRHDRNAME: AO_POLICY_GRACEPERIOD
ATTRTYPE: AT_TIME
ATTRFLAGS: AF_INITIALIZE
ATTRMCDPATH: GracePeriod
ATTRVIZ: 5
ATTRDEFVAL: 300
ATTRDESC:: eod
The length of time between the expiration of a lease and the time it
is made available for re-assignment.
eod

ATTR: server-lease-time
ATTRID: 4
ATTRHDRNAME: AO_POLICY_SERVERLEASETIME
ATTRTYPE: AT_TIME
ATTRMCDPATH: ServerLeaseTime
ATTRVIZ: 5
ATTRFEAT: 5
ATTRDESC:: eod
The time that the server thinks the lease is valid for.  It may be
useful to have the server consider leases leased for a longer period
than the client in order to get more frequent client communication
along with the stability of long lease times.  This value will not
be used unless it is longer than the lease time in the dhcp-lease-time
option found through the normal traversal of policies.
eod

ATTR: split-lease-times
ATTRID: 5
ATTRHDRNAME: AO_POLICY_USESERVERLEASETIME
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: UseServerLeaseTime
ATTRVIZ: 5
ATTRDESC:: eod
If enabled, the DHCP server may use the value of the 
'server-lease-time' attribute internally.  Clients will still 
be offered lease times which reflect the configured lease-time 
option from the appropriate policy, but the server will base its 
decisions regarding expiration on the 'server-lease-time' value.
eod

ATTR: permanent-leases
ATTRID: 6
ATTRHDRNAME: AO_POLICY_PERMANENT
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: IsPermanent
ATTRVIZ: 5
ATTRDESC:: eod
Specifies that leases for this scope should be permanently granted to
requesting clients.
eod

ATTR: allow-lease-time-override
ATTRID: 7
ATTRHDRNAME: AO_POLICY_ALLOWLEASETIMEOVERRIDE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: AllowLeaseTimeOverride
ATTRVIZ: 5
ATTRDESC:: eod
Clients may request a specific lease-time. The server will not
honor those requested lease-times if this attribute is 'false'. The
server will not honor a client's lease-time if that time is longer
than the server's normal lease-time.
eod

ATTR: mcns
ATTRID: 8
ATTRHDRNAME: AO_POLICY_MCNSENABLED
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRMCDPATH: MCNSEnabled
ATTRVIZ: 1
ATTRDESC:: eod
This feature controls the use of a group of MCNS-compatible
extensions.
eod

ATTR: mcns-next-server
ATTRID: 9
ATTRHDRNAME: AO_POLICY_MCNSNEXTSERVER
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: MCNSNextServer
ATTRFEAT: 8
ATTRVIZ: 1
ATTRDESC:: eod
The IP address of the MCNS 'next-server', which will be placed in the
'siaddr' field of the server's replies.
eod

ATTR: mcns-security-server
ATTRID: 10
ATTRHDRNAME: AO_POLICY_MCNSSECURITYSERVER
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: MCNSSecurityServer
ATTRFEAT: 8
ATTRVIZ: 1
ATTRDESC:: eod
The IP address of an MCNS security server, which will be returned in
the MCNS_SECURITY_SERVER dhcp option.
eod

ATTR: mcns-bootfile
ATTRID: 11
ATTRHDRNAME: AO_POLICY_MCNSBOOTFILE
ATTRTYPE: AT_STRING
ATTRMCDPATH: MCNSBootFile
ATTRFEAT: 8
ATTRVIZ: 1
ATTRDESC:: eod
The name of the bootfile to specify when in MCNS-compatible mode.
eod

ATTR: mcns-options
ATTRID: 12
ATTRHDRNAME: AO_POLICY_MCNSOPTIONS
ATTRTYPE: AT_ARRAY(AT_INT)
# until we agree on this storage, the tree representation is a string
# of bytes, and must be handled separately
ATTRFLAGS: AF_NOTREE
ATTRMCDPATH: MCNSOptions
ATTRFEAT: 8
ATTRVIZ: 1
ATTRDESC:: eod
A list of dhcp option numbers which should be returned in MCNS-mode.
eod

ATTR: packet-siaddr
ATTRID: 13
ATTRHDRNAME: AO_POLICY_SIADDR
ATTRMCDPATH: packet-siaddr
ATTRTYPE: AT_IPADDR
ATTRVIZ: 5
ATTRDESC:: eod
The IP address of the 'next server' in a client's boot process. For
example, this might be the address of a TFTP server used by BOOTP
clients. The server returns this address in the 'siaddr' field of its
replies.
eod

ATTR: packet-file-name
ATTRID: 14
ATTRHDRNAME: AO_POLICY_FILE_NAME
ATTRMCDPATH: packet-file-name
ATTRTYPE: AT_STRING
ATTRVIZ: 5
ATTRDESC:: eod
The name of a boot-file to be used in a client's boot process. The
server returns this file name in the 'file' field of its replies. The
packet-file-name cannot be longer than 128 characters.
eod

ATTR: packet-server-name
ATTRID: 15
ATTRHDRNAME: AO_POLICY_SERVER_NAME
ATTRMCDPATH: packet-server-name
ATTRTYPE: AT_STRING
ATTRVIZ: 5
ATTRDESC:: eod
The host-name of a server to be used in a client's boot process. The
server returns this file name in the 'sname' field of its replies. The
packet-server-name field cannot be longer than 64 characters.
eod

ATTR: dhcp-reply-options
ATTRID: 16
ATTRHDRNAME: AO_POLICY_DHCP_REPLY_OPTIONS
ATTRMCDPATH: dhcp-reply-options
ATTRTYPE: AT_SET(AT_STRING)
ATTRVIZ: 5
ATTRDESC:: eod
A list of the names of options that should be returned in any replies
to DHCP clients. The options themselves do not have to have been
configured in the same policy as the reply-options list; the server
will search the hierarchy of policies for each option named in the
list.
eod

ATTR: bootp-reply-options
ATTRID: 17
ATTRHDRNAME: AO_POLICY_BOOTP_REPLY_OPTIONS
ATTRMCDPATH: bootp-reply-options
ATTRTYPE: AT_SET(AT_STRING)
ATTRVIZ: 5
ATTRDESC:: eod
A list of the names of options that should be returned in any replies
to BOOTP clients. The options themselves do not have to have been
configured in the same policy as the reply-options list; the server
will search the hierarchy of policies for each option named in the
list.
eod

ATTR: release-grace-period
ATTRID: 18
ATTRHDRNAME: AO_POLICY_RELEASE_GRACE_PERIOD
ATTRMCDPATH: release-grace-period
ATTRTYPE: AT_TIME
ATTRVIZ: 3
ATTRDESC:: eod
If 'use-release-grace-period' is enabled globally, or by a
client-entry, client-class or dhcp scope, a RELEASE message will
not immediately make a lease available. The DHCP server will
consider the lease bound to its client for the duration of the
release-grace-period. When that period elapses, the lease will be
released, and only then will become available to other clients.
eod

ATTR: options
ATTRID: 21
ATTRHDRNAME: AO_POLICY_OPTIONS
ATTRTYPE: AT_DICT(AT_BLOB)
ATTRFLAGS: AF_NOTREE
ATTRMCDPATH: options
ATTRVIZ: 1
ATTRDESC:: eod
Not used on 6.0 and later.
eod

ATTR: vendoroptions
ATTRID: 22
ATTRHDRNAME: AO_POLICY_VENDOROPTIONS
ATTRTYPE: AT_DICT(AT_STRING)
ATTRFLAGS: AF_NOTREE
ATTRMCDPATH: vendoroptions
ATTRVIZ: 3

ATTR: vendoroptions-wireformat
ATTRID: 23
ATTRHDRNAME: AO_POLICY_VENDOROPTIONS_WIREFORMAT
ATTRTYPE: AT_DICT(AT_STRING)
ATTRFLAGS: AF_NOTREE
ATTRMCDPATH: vendoroptions-wireformat
ATTRVIZ: 3

ATTR: allow-client-a-record-update
ATTRID: 24
ATTRHDRNAME: AO_POLICY_ALLOWCLIENTARECORDUPDATE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: allow-client-a-record-update
ATTRVIZ: 5
ATTRDESC:: eod
This value determines if client is allowed to update A record. If the
client sets the flags in the FQDN option to indicate that it wants to
do the A record update in the request, and if this value is TRUE, the
server allows the client to do the A record update, else based on
other server configurations, the server does the A record update.
Default is FALSE.
eod

ATTR: dhcp-reply-options-number
ATTRID: 25
ATTRHDRNAME: AO_POLICY_DHCP_REPLY_OPTIONS_NUMBER
ATTRMCDPATH: dhcp-reply-options-number
ATTRTYPE: AT_ARRAY(AT_INT)
ATTRVIZ: 3
ATTRDESC:: eod
A list of option numbers that should be returned in any replies
to DHCP clients.
eod

ATTR: bootp-reply-options-number
ATTRID: 26
ATTRHDRNAME: AO_POLICY_BOOTP_REPLY_OPTIONS_NUMBER
ATTRMCDPATH: bootp-reply-options-number
ATTRTYPE: AT_ARRAY(AT_INT)
ATTRVIZ: 3
ATTRDESC:: eod
A list option numbers that should be returned in any replies
to BOOTP clients.
eod

ATTR: version
ATTRID: 27
ATTRHDRNAME: AO_POLICY_VERSION
ATTRTYPE: AT_INT
ATTRMCDPATH: version
ATTRVIZ: 1

ATTR: allow-dual-zone-dns-update
ATTRID: 28
ATTRHDRNAME: AO_POLICY_ALLOW_DUAL_ZONE_DNS_UPDATE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRVIZ: 5
ATTRDESC:: eod
Some DHCP clients wish to perform DNS updates into two DNS zones.
In order to support these clients, the DHCP server can be configured
to allow the client to perform an update, but also perform a DNS
update on the client's behalf.
The default is FALSE.
eod

ATTR: option-list
ATTRID: 29
ATTRHDRNAME: AO_POLICY_OPTION_LIST
ATTRTYPE: AT_NLIST(AT_OBJ(Option))
# 1<<16 | 1131
ATTRVAL: 66667
ATTRVIZ: 3
ATTRDESC:: eod
The list of DHCP options that are part of this policy.
eod

ATTR: limitation-count
ATTRID: 30
ATTRHDRNAME: AO_POLICY_LIMITATIONCOUNT
ATTRTYPE: AT_INT
ATTRMCDPATH: limitation-count
ATTRDESC:: eod
The maximum number of clients with the same limitation-id allowed to
have currently active (i.e., valid) leases.
eod

ATTR: inhibit-all-renews
ATTRID: 31
ATTRTYPE: AT_BOOL
ATTRDEFVAL: false
ATTRVIZ: 5
ATTRDESC:: eod
The inhibit-all-renews feature causes the server to reject all
renewal requests, forcing the client to obtain a different address
any time it contacts the DHCP server.
eod

ATTR: inhibit-renews-at-reboot
ATTRID: 32
ATTRTYPE: AT_BOOL
ATTRDEFVAL: false
ATTRVIZ: 5
ATTRDESC:: eod
The inhibit-renews-on-reboot feature permits clients to renew their
leases, but the server will force them to obtain new addresses each
time they reboot.
eod

ATTR: unavailable-timeout
ATTRID: 33
ATTRHDRNAME: AO_POLICY_UNAVAILABLETIMEOUT
ATTRTYPE: AT_TIME
ATTRVIZ: 5
ATTRDESC:: eod
The server will make a lease unavailable for this period of time, and
then the lease will return to available state.  If there is no
value configured in the system_default_policy, then the default is
86400 seconds, which is 24 hours.
eod

ATTR: giaddr-as-server-id
ATTRID: 34
ATTRTYPE: AT_BOOL
ATTRDEFVAL: false
ATTRVIZ: 5
ATTRDESC:: eod
The giaddr-as-server-id feature will, when enabled, cause the
DHCP server to set the server-id option on a DHCPOFFER and a
DHCPACK to the giaddr of the incoming packet, instead of the IP
address of the server (as it will by default).  This will cause
all unicast renews to be sent to the relay agent instead of
directly to the DHCP server, and so renews will arrive at the
DHCP server with option-82 information appended to the packet.
Some relay agents may not support this capability and in some
complex configurations the giaddr may not actually be an address
to which the DHCP client can unicast a packet.  In these cases,
the DHCP client will not be able to renew a lease, and will
always end up performing a rebinding operation (where the DHCP
client broadcasts a request instead of unicasting it to what it
believes is the DHCP server).  This feature is disabled by
default.
eod


#
# Warning, this definition is hard-coded in class.c opt_parse
#

CLASS: OldOption
CLASSROOT: OPTION
CLASSID: 1103
CLASSNAME: 1
CLASSVIZ: 0
CLASSDESC:: eod
A DHCP Option object, containing a specific values for a specific
option. Not currently used.
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_OPTION_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRVIZ: 3

ATTR: number
ATTRID: 2
ATTRHDRNAME: AO_OPTION_NUMBER
ATTRTYPE: AT_INT
ATTRMCDPATH: number

ATTR: type
ATTRID: 3
ATTRHDRNAME: AO_OPTION_TYPE
ATTRTYPE: AT_INT
ATTRMCDPATH: type
ATTRFLAGS: AF_PRINT_HEX

# for now, the value is a string, it should be a parsed blob
ATTR: strval
ATTRID: 4
ATTRHDRNAME: AO_OPTION_STRVAL
ATTRTYPE: AT_STRING
ATTRMCDPATH: strval

# for now, the description of the type as a string
ATTR: typestr
ATTRID: 5
ATTRHDRNAME: AO_OPTION_TYPESTR
ATTRTYPE: AT_STRING
ATTRMCDPATH: typestr

CLASS: DHCPInterface
CLASSROOT: DHCPINTERFACE
CLASSID: 1104
CLASSNAME: 1
CLASSVIZ: 0
CLASSDESC:: eod
The interface to a DHCP server.  Deprecated in favor of the more
general Interface object.
eod

ATTR: addr
ATTRID: 1
ATTRHDRNAME: AO_DHCPINTERFACE_IPADDRESS
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: IPAddress
ATTRFLAGS: AF_IMMUTABLE
ATTRVIZ: 3
ATTRDESC:: eod
The interface's IP address.
eod

ATTR: netmask
ATTRID: 2
ATTRHDRNAME: AO_DHCPINTERFACE_NETMASK
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: NetMask
ATTRVIZ: 3
ATTRFLAGS: AF_IMMUTABLE
ATTRDESC:: eod
The interface's subnet mask.
eod

ATTR: DHCPPort
ATTRID: 3
ATTRHDRNAME: AO_DHCPINTERFACE_DHCPPORT
ATTRTYPE: AT_INT
ATTRMCDPATH: DHCPPort
ATTRVIZ: 3

ATTR: DNSPort
ATTRID: 4
ATTRHDRNAME: AO_DHCPINTERFACE_DNSPORT
ATTRTYPE: AT_INT
ATTRMCDPATH: DNSPort
ATTRVIZ: 3

ATTR: PingPort
ATTRID: 5
ATTRHDRNAME: AO_DHCPINTERFACE_PINGPORT
ATTRTYPE: AT_INT
ATTRMCDPATH: PingPort
ATTRVIZ: 0

ATTR: ClientPort
ATTRID: 6
ATTRHDRNAME: AO_DHCPINTERFACE_CLIENTPORT
ATTRTYPE: AT_INT
ATTRMCDPATH: ClientPort
ATTRVIZ: 3

ATTR: RelayPort
ATTRID: 7
ATTRHDRNAME: AO_DHCPINTERFACE_RELAYPORT
ATTRTYPE: AT_INT
ATTRMCDPATH: RelayPort
ATTRVIZ: 3

ATTR: MinimumSocketBufferSize
ATTRID: 8
ATTRHDRNAME: AO_DHCPINTERFACE_MINIMUMSOCKETBUFFERSIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: MinimumSocketBufferSize
ATTRVIZ: 3
ATTRDESC:: eod
The size of the socket buffers to use on the interface.
eod

CLASS: ScopeAttribute
CLASSROOT: SCOPEATTRIBUTE
CLASSID: 1105
CLASSNAME: 1
CLASSVIZ: 0
CLASSDESC:: eod
Deprecated mapping of attribute name to bit position in a 32 bit mask
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_SCOPEATTRIBUTE_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name

ATTR: bitnum
ATTRID: 2
ATTRHDRNAME: AO_SCOPEATTRIBUTE_BITNUM
ATTRTYPE: AT_INT
ATTRMCDPATH: bitnum

CLASS: Reservation
CLASSROOT: RESERVATION
CLASSID: 1107
CLASSNAME: 1
CLASSNAMEDESC:: eod
There is no semantic meaning to the name of a Reservation.  Currently,
the MAC address is used, but a single MAC address can have multiple
reservations, so there is no uniqueness requirement.  There are (or
should be) search methods to find reservations by either MAC or IP
address.
eod
CLASSVIZ: 5
CLASSDESC:: eod
A DHCP lease reservation.
eod

ATTR: mac
ATTRID: 1
ATTRHDRNAME: AO_RESERVATION_MAC
ATTRTYPE: AT_MACADDR
ATTRMCDPATH: mac
ATTRVIZ: 5
ATTRDESC:: eod
The MAC address of the client for whom the specified IP address is to
be reserved.
eod

ATTR: ipaddr
ATTRID: 2
ATTRHDRNAME: AO_RESERVATION_IPADDR
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: ipaddr
ATTRVIZ: 5
ATTRDESC:: eod
An IP address that is within the network specified by the scope that
contains the reservation.
eod

ATTR: vpn-id
ATTRID: 3
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REFERENCE
# Encode attribute 4 of Vpn(1127) as 4<<16 + 1127 == 263271
ATTRVAL: 263271
ATTRDESC:: eod
The id of the VPN that contains this reservation.
eod

ATTR: include-tags
ATTRID: 4
ATTRTYPE: AT_NLIST(AT_STRING)
# AT_STRING = 5
ATTRVAL: 5
ATTRVIZ: 5
ATTRDESC:: eod
The selection-criteria for this reservation
eod

ATTR: exclude-tags
ATTRID: 5
ATTRTYPE: AT_NLIST(AT_STRING)
# AT_STRING = 5
ATTRVAL: 5
ATTRVIZ: 5
ATTRDESC:: eod
The excluded selection-criteria for this reservation
eod

ATTR: client-class
ATTRID: 6
ATTRTYPE: AT_NAMEREF(ClientClass)
ATTRVAL: 1117
ATTRVIZ: 5
ATTRDESC:: eod
The name of a client class to use for selecting from 
multiple Scopes that could contain this reservation.
eod

ATTR: relay-info
ATTRID: 7
ATTRTYPE: AT_BLOB
ATTRDESC:: eod
For leasequery to work with reservations for static addresses
in a cable environment, the relay-agent option information 
needs to be configured with the reservation.  If this is set, 
this attribute should be the complete contents of the 
relay-agent-info (option-82) to be provided in a synthesized 
leasequery response for this reservation.
eod

ATTR: cluster-id
ATTRID: 8
ATTRTYPE: AT_SHORT
ATTRFLAGS: AF_REFERENCE
# Encode attribute 11 of Cluster(1449) as 11<<16 + 1449 == 722345
ATTRVAL: 722345
ATTRDESC:: eod
The id of the cluster that contains the authoritative copy
of this reservation.
eod

ATTR: replica-deleted
ATTRID: 9
ATTRTYPE: AT_BYTE
ATTRDESC:: eod
A marker that the replica propagation code thinks that this
object should be deleted.  This is used rather than removing
the cluster-id value so we can tell when an object has been
created by replica propagation and then should be deleted.
eod

ATTR: device-name 
ATTRID: 10 
ATTRTYPE: AT_STRING 
ATTRDESC:: eod 
The optional name of the device represented by this 
Reservation object. 
eod 
 
ATTR: description 
ATTRID: 11 
ATTRTYPE: AT_STRING 
ATTRDESC:: eod 
The optional description of the device represented by this 
Reservation object. 
eod 
########################################
# L e a s e
# L E A S E
# Lease
########################################

CLASS: Lease
CLASSROOT: LEASE
CLASSID: 1108
CLASSNAME: 15
CLASSNAMEDESC:: eod
The name of a lease object is the IP address that it represents.
eod
CLASSVIZ: 5
CLASSDESC:: eod
A DHCP lease
eod

ATTR: client-dns-name
ATTRID: 1
ATTRHDRNAME: AO_LEASE_CLIENT_DNS_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: client-dns-name
ATTRVIZ: 5
ATTRDESC:: eod
The DHCP server attempted (possibly successfully) to enter
this name into the DNS server for this client.
It is related to the client-host-name, but may not be
identical due to name collisions in the DNS server database.
eod

ATTR: client-mac-addr
ATTRID: 2
ATTRHDRNAME: AO_LEASE_CLIENT_MAC_ADDR
ATTRTYPE: AT_MACADDR
ATTRMCDPATH: client-mac-addr
ATTRVIZ: 5
ATTRDESC:: eod
The MAC address which the client presented to the DHCP server.
eod

ATTR: client-domain-name
ATTRID: 3
ATTRHDRNAME: AO_LEASE_CLIENT_DOMAIN_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: client-domain-name
ATTRVIZ: 5
ATTRDESC:: eod
The domain name specified (if any) into which to put the
client's DNS name.
eod

ATTR: client-old-domain-name
ATTRID: 4
ATTRHDRNAME: AO_LEASE_CLIENT_OLD_DOMAIN_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: client-old-domain-name
ATTRVIZ: 3

ATTR: client-host-name
ATTRID: 5
ATTRHDRNAME: AO_LEASE_CLIENT_HOST_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: client-host-name
ATTRVIZ: 5
ATTRDESC:: eod
The DNS name that the client requested the DHCP server
place into the DNS server.
eod

ATTR: client-id
ATTRID: 6
ATTRHDRNAME: AO_LEASE_CLIENT_CLIENT_ID
ATTRTYPE: AT_STRING
ATTRMCDPATH: client-id
ATTRVIZ: 5
ATTRDESC:: eod
The client-id specified by the client, or one synthesized by
the DHCP server for this client (if client-id-created-from-mac-address
is set in the client-flags).
eod

ATTR: client-flags
ATTRID: 7
ATTRHDRNAME: AO_LEASE_CLIENT_FLAGS
ATTRTYPE: AT_FLAGSINT(client-valid=1, client-id-created-from-mac-address=2, client-dns-name-up-to-date=3, client-up-to-date-in-mcd=4, reverse-dns-up-to-date=5, dns-update-pending=9, client-fqdn-present=10, client-updates-name = 11, clear-host-name=7, host-name-has-changed=6, domain-name-has-changed=8, use-test-before-update = 12, avoid-dns-retry=13, dual-zone-dns-update=14, client-invalid-due-to-macaddress=15, in-limitation-list=16, used-over-limit-client-class = 17 )
ATTRMCDPATH: client-flags
ATTRVIZ: 5
ATTRDESC:: eod
A variety of flags relating to the client:

  client-id-created-from-mac-address

    Indicates that the client-id was created for internal
    use from the client supplied MAC address.  It will never
    be reported externally if this is true.

  client-dns-name-up-to-date

    Indicates that the client-dns-name (A) is actually current
    in the DNS server database.

  reverse-dns-up-to-date

    Indicates that the reverse (PTR) DNS entry is current
    in the DNS database.

  dns-update-pending

    Indicates that a DNS operation is pending for this client.

  in-limitation-list

    Indicates that this lease is presently in a limitation list using
    the limitation-id shown.

These are for internal use only:

  client-valid
  client-fqdn-present
  client-updates-name
  clear-host-name
  host-name-has-changed
  domain-name-has-changed
  use-test-before-update
  avoid-dns-retry
  dual-zone-dns-update
  client-invalid-due-to-macaddress
  used-over-limit-client-class

eod


ATTR: client-last-name-num
ATTRID: 8
ATTRHDRNAME: AO_LEASE_CLIENT_LAST_NAME_NUM
ATTRTYPE: AT_INT
ATTRMCDPATH: client-last-name-num
ATTRVIZ: 3
ATTRDESC:: eod
If DHCP is updating DNS, and a client specifies a hostname which
conflicts with a hostname that is already present in the zone, DHCP
will
eod

ATTR: client-last-name-num-len
ATTRID: 9
ATTRHDRNAME: AO_LEASE_CLIENT_LAST_NAME_NUM_LEN
ATTRTYPE: AT_INT
ATTRMCDPATH: client-last-name-num-len
ATTRVIZ: 3
ATTRDESC:: eod
eod

ATTR: client-last-transaction-time
ATTRID: 10
ATTRHDRNAME: AO_LEASE_CLIENT_LAST_TRANS_TIME
ATTRTYPE: AT_DATE
ATTRMCDPATH: client-last-trans-time
ATTRVIZ: 5
ATTRDESC:: eod
The time at which the client most recently contacted the
DHCP server.
eod

ATTR: state
ATTRID: 11
ATTRHDRNAME: AO_LEASE_STATE
ATTRTYPE: AT_ENUMINT(available=1, offered=2, leased=3, expired=4, unavailable=5, released=6, other-available=7, pending-available=8)
ATTRMCDPATH: lease-state
ATTRFLAGS: AF_PRINT_ALT
ATTRVIZ: 5
ATTRDESC:: eod
The current state of the lease.

    available

	The lease is not currently leased by any client.
	Any client information is from the most recent
	client to lease or be offered this lease.

    offered

	The lease is offered to the associated client.
	In many cases, the database is not written with
	information concerning offering a lease to a client
	since there is no requirement to update stable
	storage with this information.

    leased

	The lease is currently leased to the client whose
	information appears in the lease.

    expired

	The client specified has not renewed the lease, and
	it expired.  Upon expiration the DNS information for
	this client was scheduled for removal.

    unavailable

	The lease is unavailable.  It was made unavailable
	because of some conflict.  A ping attempt might
	have shown that the IP address was already in use
	by another client, or the DHCP server might have
	noticed another DHCP server handing out this IP address,
	or a DHCP client might have declined the lease.
	You can use the start-time-of-state to determine
	when the lease was made unavailable, and perhaps
	look in the log file around that time to determine
	exactly why the lease was made unavailable.

    released

	The client specified has released the lease, but
	the server was configured to apply a 'release-grace-period'.
	The lease won't be made available until the grace-period
	expires.

    other-available

	Used only when failover is enabled.  A lease in the
	other-available state is available for allocation by
	the other server in the failover pair, but not
	available for allocation by this server.

    pending-available

	Used only when failover is enabled.  A lease in the
	pending-available state will be available as soon as
	this server can synchronize its available state with
	the other server.

eod

ATTR: flags
ATTRID: 12
ATTRHDRNAME: AO_LEASE_FLAGS
ATTRTYPE: AT_FLAGSINT(reserved=1, valid=2, deactivated=3, initialized=4, failover-updated=5, not_in_ranges=6, dynamic=7, backup=8 )
ATTRFLAGS: AF_PRINT_ALT
ATTRMCDPATH: lease-flags
ATTRVIZ: 5
ATTRDESC:: eod
Flags for the lease:

    reserved

	The lease is reserved for some MAC address.  The table
	that relates MAC addresses to leases is in the scope.

    deactivated

	The lease is deactivated, which means that it should
	not be used.  Any client which is using a deactivated
	lease will be NAK'ed on their next renewal.

    backup

	Indicates that the state for this lease was recorded
	by a server whose role was backup with respect to this
	lease.

    dynamic

	Last written by server which knew only about the lease
	because it was created by a send-reservation command.

For internal use only:

    initialized
    valid
    failover-updated
eod

ATTR: expiration
ATTRID: 13
ATTRHDRNAME: AO_LEASE_EXPIRATION
ATTRTYPE: AT_DATE
ATTRMCDPATH: lease-expiration
ATTRVIZ: 5
ATTRDESC:: eod
The time at which the lease will expire.
eod

ATTR: start-time-of-state
ATTRID: 14
ATTRHDRNAME: AO_LEASE_START_TIME_OF_STATE
ATTRTYPE: AT_DATE
ATTRMCDPATH: lease-start-time-of-state
ATTRVIZ: 5
ATTRDESC:: eod
The time at which the state last changed to
its current value.
eod

ATTR: address
ATTRID: 15
ATTRHDRNAME: AO_LEASE_ADDRESS
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: address
ATTRVIZ: 5
ATTRDESC:: eod
The IP address of this lease.
eod

ATTR: network-name
ATTRID: 16
ATTRHDRNAME: AO_LEASE_NETWORK_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: lease-network-name
ATTRVIZ: 3
ATTRDESC:: eod
eod

ATTR: version
ATTRID: 17
ATTRHDRNAME: AO_LEASE_VERSION
ATTRTYPE: AT_VERSION
ATTRMCDPATH: version
ATTRVIZ: 3

ATTR: client-class-name
ATTRID: 18
ATTRHDRNAME: AO_LEASE_CLIENT_CLASS_NAME
ATTRTYPE: AT_STRING
ATTRVIZ: 3

ATTR: relay-agent-circuit-id
ATTRID: 19
ATTRHDRNAME: AO_LEASE_CLIENT_RELAY_AGENT_CIRCUIT_ID
ATTRTYPE: AT_BLOB
ATTRVIZ: 5

ATTR: relay-agent-remote-id
ATTRID: 20
ATTRHDRNAME: AO_LEASE_CLIENT_RELAY_AGENT_REMOTE_ID
ATTRTYPE: AT_BLOB
ATTRVIZ: 5

ATTR: partner-address
ATTRID: 21
ATTRHDRNAME: AO_LEASE_SF_PARTNER_ADDR
ATTRTYPE: AT_IPADDR
ATTRVIZ: 3

# the serial number of this lease's state
ATTR: state-serial
ATTRID: 22
ATTRHDRNAME: AO_LEASE_STATE_SERIAL
ATTRTYPE: AT_INT
ATTRVIZ: 3

# the last xid that was acked by the partner
ATTR: failover-partner-xid
ATTRID: 23
ATTRHDRNAME: AO_LEASE_FAILOVER_PARTNER_XID
ATTRTYPE: AT_INT
ATTRVIZ: 3

# the last expiration time that the partner has acked
ATTR: partner-expiration-time
ATTRID: 24
ATTRHDRNAME: AO_LEASE_FAILOVER_PARTNER_EXPIRATION
ATTRTYPE: AT_DATE
ATTRVIZ: 3

# the last time that the partner has acked an update
ATTR: failover-partner-last-updated-time
ATTRID: 25
ATTRHDRNAME: AO_LEASE_PARTNER_LAST_UPDATED
ATTRTYPE: AT_DATE
ATTRVIZ: 3

# the failover partner's address
ATTR: failover-partner-address
ATTRID: 26
ATTRHDRNAME: AO_LEASE_FAILOVER_PARTNER_ADDRESS
ATTRTYPE: AT_IPADDR
ATTRVIZ: 3

# the current time at the failover partner
ATTR: failover-partner-time
ATTRID: 27
ATTRHDRNAME: AO_LEASE_FAILOVER_PARTNER_TIME
ATTRTYPE: AT_TIME
ATTRVIZ: 3
ATTRDESC:: eod
The current time at the failover partner when an update or ack
was sent.
eod

# the current failover state of the network the lease is in
ATTR: failover-state
ATTRID: 28
ATTRHDRNAME: AO_LEASE_FAILOVER_STATE
ATTRTYPE: AT_ENUMINT(none=0, unknown=1, normal=2, interrupted=3, partner-down=4, pot-conflict=5, recover=6, sync=7)
ATTRFLAGS: AF_PRINT_ALT
ATTRVIZ: 3
ATTRDESC:: eod
The current state of the Network that the Lease is in.
eod

# the next expiration time that we want to give the partner
ATTR: next-partner-expiration-time
ATTRID: 29
ATTRHDRNAME: AO_LEASE_FAILOVER_NEXT_PARTNER_EXPIRATION
ATTRTYPE: AT_DATE
ATTRVIZ: 3

# the current server's failover role
ATTR: failover-role
ATTRID: 30
ATTRHDRNAME: AO_LEASE_FAILOVER_ROLE
ATTRTYPE: AT_ENUMINT(backup=0, primary=1)
ATTRVIZ: 3

# the failover's own address
ATTR: failover-address
ATTRID: 31
ATTRHDRNAME: AO_LEASE_FAILOVER_ADDRESS
ATTRTYPE: AT_IPADDR
ATTRVIZ: 3


ATTR: failover-lease-state
ATTRID: 32
ATTRHDRNAME: AO_LEASE_FAILOVER_LEASE_STATE
ATTRTYPE: AT_ENUMINT(none=0, free=1, active=2, expired=3, released=4, abandoned=5, reset=6, backup=7 )
ATTRMCDPATH: failover_lease-state
ATTRFLAGS: AF_PRINT_ALT
ATTRVIZ: 3
ATTRDESC:: eod
If the lease is not sfuptodate, this is the state that we want
to send to the partner next time we get the chance.
eod

# the longest expiration time that we have ever given this client

ATTR: client-expiration-time
ATTRID: 33
ATTRHDRNAME: AO_LEASE_FAILOVER_CLIENT_EXPIRATION
ATTRTYPE: AT_DATE
ATTRVIZ: 3
ATTRDESC:: eod
The latest time that this server has ever given to this client.
eod

# the longest expiration time that we have acked the failover partner

ATTR: acked-to-partner-time
ATTRID: 34
ATTRHDRNAME: AO_LEASE_FAILOVER_ACKED_TO_PARTNER
ATTRTYPE: AT_DATE
ATTRVIZ: 3
ATTRDESC:: eod
The latest time that this server has ever acked to
the failover partner.
eod

# the time this client was first created

ATTR: client-creation-time
ATTRID: 35
ATTRHDRNAME: AO_LEASE_FAILOVER_CLIENT_CREATION_TIME
ATTRTYPE: AT_DATE
ATTRVIZ: 3
ATTRDESC:: eod
The time this client was first created.
eod

ATTR: vendor-class-id
ATTRID: 36
ATTRHDRNAME: AO_LEASE_VENDOR_CLASS_ID
ATTRTYPE: AT_STRING
ATTRVIZ: 5
ATTRDESC:: eod
The vendor-class-id as offered in a dhcp request option 60.
eod

ATTR: lease-renewal-time
ATTRID: 37
ATTRHDRNAME: AO_LEASE_RENEWAL_TIME
ATTRTYPE: AT_DATE
ATTRVIZ: 5
ATTRDESC:: eod
The earliest time at which the client is expected to issue
a renewal request.
eod

ATTR: client-os-type
ATTRID: 38
ATTRHDRNAME: AO_LEASE_CLIENT_CLIENT_OS_TYPE
ATTRTYPE: AT_STRING
ATTRMCDPATH: client-os-type
ATTRVIZ: 5
ATTRDESC:: eod
This value indicates the Operating System of the client:
Where appropriate add the major and minor version number on here.
Format: OSNAME major.minor
"Microsoft Windows NT Server"
"Microsoft Windows NT Advanced Server"
"Microsoft Windows NT Workstation 4.0"
"Microsoft Windows NT Workstation 3.51"
"Microsoft Windows 2000 Professional"
"Microsoft Windows 95"
"Microsoft Windows 9x"
"Microsoft Windows for Workgroups"
"Microsoft Windows"
"Dos"
"Netware"
"LANMAN Workstation"
"LANMAN Server"
"OS/2"
"MAC OS"
eod

ATTR: client-binary-client-id
ATTRID: 39
ATTRHDRNAME: AO_LEASE_CLIENT_BINARY_CID
ATTRTYPE: AT_BLOB
ATTRVIZ: 5
ATTRDESC:: eod
A binary form of the client's client-identifier, if any.
eod

ATTR: namespace-id
ATTRID: 40
ATTRHDRNAME: AO_LEASE_NAMESPACE_ID
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REFERENCE
# Encode attribute 4 of Namespace(1127) as 4<<16 + 1127 == 263271
ATTRVAL: 263271
ATTRDESC:: eod
The id of the dhcp namespace that contains this lease.
eod

ATTR: relay-agent-vpn-id
ATTRID: 41
ATTRHDRNAME: AO_LEASE_CLIENT_RELAY_AGENT_VPN_ID
ATTRTYPE: AT_BLOB
ATTRVIZ: 5
ATTRDESC:: eod
The contents of the vpn-id sub-option of the relay agent
information option.
eod

ATTR: relay-agent-subnet-selection
ATTRID: 42
ATTRHDRNAME: AO_LEASE_CLIENT_RELAY_AGENT_SUBNET_SELECTION
ATTRTYPE: AT_IPADDR
ATTRVIZ: 5
ATTRDESC:: eod
The IP address in the subnet selection sub-option of the relay agent
information option.
eod

ATTR: relay-agent-option
ATTRID: 43
ATTRHDRNAME: AO_LEASE_CLIENT_RELAY_AGENT_OPTION
ATTRTYPE: AT_BLOB
ATTRVIZ: 5
ATTRDESC:: eod
The contents of the relay agent information option from the
most recent client interaction.
eod

ATTR: relay-agent-server-id-override
ATTRID: 44
ATTRHDRNAME: AO_LEASE_CLIENT_RELAY_AGENT_SERVER_ID_OVERRIDE
ATTRTYPE: AT_IPADDR
ATTRVIZ: 5
ATTRDESC:: eod
The IP address in the server-id-override sub-option of the relay
agent information option.
eod

ATTR: failover-sequence-number
ATTRID: 45
ATTRHDRNAME: AO_LEASE_FAILOVER_SEQUENCE_NUMBER
ATTRTYPE: AT_VERSION
ATTRVIZ: 3
ATTRDESC:: eod
Sequence number of failover object to which this lease belongs.
eod

ATTR: limitation-id
ATTRID: 46
ATTRHDRNAME: AO_LEASE_CLIENT_LIMITATION_ID
ATTRTYPE: AT_BLOB
ATTRVIZ: 5
ATTRDESC:: eod
This value relates together leases for which there exists a
maximum limit on the number of simultaneous active leases
allowed. It is defined in the client-class or client.
eod

ATTR: binding-start-time
ATTRID: 47
ATTRTYPE: AT_DATE
ATTRVIZ: 5 
ATTRDESC:: eod
Within the dhcp lease database, this holds the time at which a lease
binding began. This is an internal attribute: it's not user-editable.
eod

ATTR: binding-end-time
ATTRID: 48
ATTRTYPE: AT_DATE
ATTRVIZ: 5
ATTRDESC:: eod
Within the dhcp lease database, this holds the time at which a lease
binding ended. This is an internal attribute: it's not user-editable.
eod


ATTR: reservation-mac-addr
ATTRID: 55
ATTRTYPE: AT_MACADDR
ATTRDESC:: eod
The MAC address of the client for which this lease is reserved. 
eod

###############################
# End of L e a s e
#        L E A S E
# end Lease
# end LEASE
###############################


CLASS: DHCPScriptPoints
CLASSROOT: DHCP_SCRIPT
CLASSID: 1109
CLASSNAMEDESC:: eod
There is one DHCPScriptPoint object per DHCP server object, and since
it is a nested object, it does not have a name.
eod
CLASSVIZ: 5
CLASSDESC:: eod
The script points for a DHCP server
eod

ATTR: post-packet-decode
ATTRID: 1
ATTRHDRNAME: AO_DHCP_SCRIPT_PACKET_PARSED
ATTRTYPE: AT_NAMEREF(ScriptConfig)
ATTRVAL: 51
ATTRMCDPATH: post-packet-decode
ATTRVIZ: 5
ATTRDESC:: eom
This is the first extension point encountered when a request arrives.
It immediately follows the decoding of the input packet, and precedes
any processing on the data in the packet.  The primary activity for an
extension at this point is to read information out of an input packet
and do something with it.  Typically, that action might be to re-write
the input packet in some way.
eom

ATTR: pre-packet-encode
ATTRID: 2
ATTRHDRNAME: AO_DHCP_SCRIPT_PRE_PACKET_FORMAT
ATTRTYPE: AT_NAMEREF(ScriptConfig)
ATTRVAL: 51
ATTRMCDPATH: pre-packet-encode
ATTRVIZ: 5
ATTRDESC:: eod
This extension point is used to rewrite information in the
response packet about to be sent to the user.  This extension point
comes after the response packet is ready to be encoded into a
packet to be sent to the DHCP client.  Typically, options could
be added at this extension point to the packet.  The packet
can also be dropped at this point, but the DHCP server will
already have recorded its values in its internal database.
eod

ATTR: pre-client-lookup
ATTRID: 3
ATTRHDRNAME: AO_DHCP_SCRIPT_PRE_CLIENT_LOOKUP
ATTRTYPE: AT_NAMEREF(ScriptConfig)
ATTRVAL: 51
ATTRMCDPATH: pre-client-lookup
ATTRVIZ: 5
ATTRDESC:: eod
This extension point only runs for a request if the client-class
processing as been enabled for the server.  The purpose of this
extension point is to allow an extension to perform any or all of the
following:

1.  Modify the client that is looked up during client-class
processing.

2.  Specify individual data items to override any data items found
from client entry or the client class it specifies.

3.  Instruct the server to skip the client lookup altogether.  In this
case, the only client data that will be used is that specified in #2,
above.

4.  Drop the packet.
eod

ATTR: post-client-lookup
ATTRID: 4
ATTRHDRNAME: AO_DHCP_SCRIPT_POST_CLIENT_LOOKUP
ATTRTYPE: AT_NAMEREF(ScriptConfig)
ATTRVAL: 51
ATTRMCDPATH: post-client-lookup
ATTRVIZ: 5
ATTRDESC:: eod
This extension point is used to examine the results of the entire
client class processing operation, and take action based on those
results.  The usual actions to take are to rewrite some of the
results, or to drop the packet.

This would also be a place for an extension to place some data items
in the environment dictionary in order to affect the processing of
some extension running at the pre-packet-encode extension point (where
it might load different options into the response packet or take other
actions).
eod

ATTR: post-send-packet
ATTRID: 5
ATTRHDRNAME: AO_DHCP_SCRIPT_POST_SEND_PACKET
ATTRTYPE: AT_NAMEREF(ScriptConfig)
ATTRVAL: 51
ATTRMCDPATH: post-send-packet
ATTRVIZ: 5
ATTRDESC:: eod
This extension points exists in order that information about the
request and response can be used to update an external process or
database.
eod

ATTR: pre-dns-add-forward
ATTRID: 6
ATTRHDRNAME: AO_DHCP_SCRIPT_DNS_PRE_ADD
ATTRTYPE: AT_NAMEREF(ScriptConfig)
ATTRVAL: 51
ATTRMCDPATH: pre-dns-add-forward
ATTRVIZ: 5
ATTRDESC:: eod
This extension point exists to choose the name and affect the DNS
retires during update operations.  It may get called multiple times
for a single DNS update operation.  It has only an environment
dictionary available.
eod

ATTR: check-lease-acceptable
ATTRID: 7
ATTRHDRNAME: AO_DHCP_SCRIPT_POST_NEED_TO_DEACTIVATE
ATTRTYPE: AT_NAMEREF(ScriptConfig)
ATTRVAL: 51
ATTRMCDPATH: check-lease-acceptable
ATTRVIZ: 5
ATTRDESC:: eod
This extension point comes immediately after the server has determined
if it thinks that the current lease is acceptable for this client.
The extension can examine the results of that operation, and can cause
the routine to return different results if desired.  It should be used
with extreme care, because incorrect use can cause the server to loop
endlessly.
eod

ATTR: post-class-lookup
ATTRID: 8
ATTRHDRNAME: AO_DHCP_SCRIPT_POST_CLASS_LOOKUP
ATTRTYPE: AT_NAMEREF(ScriptConfig)
ATTRVAL: 51
ATTRMCDPATH: post-class-lookup
ATTRVIZ: 5
ATTRDESC:: eod
This extension point comes immediately after the server has determined
the client-class for an incoming DHCP packet by evaluating the
expression configured in the client-class-lookup-id.
eod

ATTR: lease-state-change
ATTRID: 9
ATTRHDRNAME: AO_DHCP_SCRIPT_LEASE_STATE_CHANGE
ATTRTYPE: AT_NAMEREF(ScriptConfig)
ATTRVAL: 51
ATTRMCDPATH: lease-state-change
ATTRVIZ: 5
ATTRDESC:: eod
This extension point is called whenever a lease changes state.
It has a response dictionary, and sometimes a request dictionary.
It can be used to track lease state changes so that leases that
are transitioning from the leased to some other state can be
caught, since they are not typically accompanied by DHCP client
packets.
eod

CLASS: OptDesc
CLASSROOT: OPTDESC
CLASSID: 1110
CLASSNAME: 1
CLASSKEY: 2
CLASSDESC:: eod
The description of a specific option number.  There is
a more general mechanism that uses the AttrDesc object
to describe general TLV data types. 
eod

ATTR: printname
ATTRID: 1
ATTRHDRNAME: AO_OPTDESC_PRINTNAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: printname
ATTRVIZ: 3
ATTRDESC:: eod
The name of this option description.
eod

ATTR: number
ATTRID: 2
ATTRHDRNAME: AO_OPTDESC_NUMBER
ATTRTYPE: AT_INT
ATTRMCDPATH: number
ATTRVIZ: 5
ATTRDESC:: eod
The number of this option description.
eod

ATTR: type
ATTRID: 3
ATTRHDRNAME: AO_OPTDESC_TYPE
# note: type currently omits OVERLOAD, OT_MESSAGE, OT_REQUEST, OT_NODE, OT_IPADDRPAIR, OT_IPNET
# note: this MUST be kept in sync with the option_type enum in optiondesc.h !!!
ATTRTYPE: AT_ENUMINT(PAD=0, BOOL, INT, INT_ARRAY, STRING, IPADDR, IPADDR_ARRAY, BYTE, BYTE_ARRAY, WORD, WORD_ARRAY, UINT, UINT_ARRAY)
ATTRMCDPATH: type
ATTRVIZ: 5
ATTRFLAGS: AF_PRINT_ALT
ATTRDESC:: eod
The data type of the option
eod

ATTR: servername
ATTRID: 4
ATTRHDRNAME: AO_OPTDESC_SERVERNAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: servername
ATTRVIZ: 3
ATTRDESC:: eod
The name of the Server
eod

ATTR: factorydefault
ATTRID: 5
ATTRHDRNAME: AO_OPTDESC_FACTORYDEFAULT
ATTRTYPE: AT_STRING
ATTRMCDPATH: factorydefault
ATTRVIZ: 3
ATTRDESC:: eod
A textual description of the option
eod

ATTR: min
ATTRID: 6
ATTRHDRNAME: AO_OPTDESC_MIN
ATTRTYPE: AT_INT
ATTRMCDPATH: min
ATTRVIZ: 3
ATTRDESC:: eod
The optional minimum integer value or string length of this option
eod

ATTR: max
ATTRID: 7
ATTRHDRNAME: AO_OPTDESC_MAX
ATTRTYPE: AT_INT
ATTRMCDPATH: max
ATTRVIZ: 3
ATTRDESC:: eod
The optional maximum integer value, or string length of this option
eod

ATTR: units
ATTRID: 8
ATTRHDRNAME: AO_OPTDESC_UNITS
ATTRTYPE: AT_INT
ATTRMCDPATH: units
ATTRVIZ: 3
ATTRDESC:: eod
The units for display purpose of the integer values
eod

ATTR: category
ATTRID: 9
ATTRHDRNAME: AO_OPTDESC_CATEGORY
ATTRVIZ: 3
ATTRTYPE: AT_STRING
ATTRMCDPATH: category
ATTRDESC:: eod
The display category for this option.  The
'custom' category is for user defined options that do not fit in
any other category.
eod

ATTR: flags
ATTRID: 10
ATTRHDRNAME: AO_OPTDESC_FLAGS
ATTRTYPE: AT_INT
ATTRMCDPATH: flags
ATTRVIZ: 1
ATTRDESC:: eod
a bitmap
eod

ATTR: internaltype
ATTRID: 11
ATTRHDRNAME: AO_OPTDESC_INTERNALTYPE
ATTRTYPE: AT_INT
ATTRMCDPATH: internaltype
ATTRVIZ: 1
ATTRDESC:: eod
a bitmap
eod

ATTR: desc
ATTRID: 12
ATTRHDRNAME: AO_OPTDESC_DESCRIPTION
ATTRVIZ: 5
ATTRTYPE: AT_STRING
ATTRMCDPATH: desc
ATTRDESC:: eod
The description for this option.
eod


CLASS: DhcpEvent
CLASSROOT: DHCPEVENT
CLASSID: 1111
CLASSVIZ: 3
CLASSDESC:: eod
Ask Mark
eod

ATTR: service-handle
ATTRID: 1
ATTRHDRNAME: AO_DHCPEVENT_SERVICE_HANDLE
ATTRTYPE: AT_INT
ATTRMCDPATH: service-handle

ATTR: operation
ATTRID: 2
ATTRHDRNAME: AO_DHCPEVENT_OPERATION
ATTRTYPE: AT_SHORT
ATTRMCDPATH: operation

ATTR: suboperation
ATTRID: 3
ATTRHDRNAME: AO_DHCPEVENT_SUBOPERATION
ATTRTYPE: AT_SHORT
ATTRMCDPATH: suboperation

ATTR: flags
ATTRID: 4
ATTRHDRNAME: AO_DHCPEVENT_FLAGS
ATTRTYPE: AT_INT
ATTRMCDPATH: flags

ATTR: event-id
ATTRID: 5
ATTRHDRNAME: AO_DHCPEVENT_EVENT_ID
ATTRTYPE: AT_INT
ATTRMCDPATH: event-id

ATTR: sequence
ATTRID: 6
ATTRHDRNAME: AO_DHCPEVENT_SEQUENCE
ATTRTYPE: AT_INT
ATTRMCDPATH: sequence

ATTR: blob
ATTRID: 7
ATTRHDRNAME: AO_DHCPEVENT_BLOB
ATTRTYPE: AT_BLOB
ATTRMCDPATH: blob

ATTR: version
ATTRID: 8
ATTRHDRNAME: AO_DHCPEVENT_VERSION
ATTRTYPE: AT_INT
ATTRMCDPATH: version

CLASS: RemoteServer
CLASSROOT: REMOTESERVER
CLASSID: 1112
CLASSVIZ: 3
CLASSNAME: 1
CLASSKEY: 1
CLASSNAMEDESC:: eod
The names of RemoteServer objects have no semantic value, but must be
unique.
eod
CLASSVIZ: 5
CLASSDESC:: eod
Ask Mark
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_REMOTESERVER_NAME
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_UNIQUE
ATTRMCDPATH: name
ATTRVIZ: 3
ATTRDESC:: eod
An arbitrary name used to refer to an individual server.
eod

ATTR: hostname
ATTRID: 2
ATTRHDRNAME: AO_REMOTESERVER_HOSTNAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: HostName
ATTRVIZ: 5
ATTRDESC:: eod
The hostname of the server to connect to. The hostname
is required for LDAP servers.
eod

ATTR: addr
ATTRID: 3
ATTRHDRNAME: AO_REMOTESERVER_ADDRESS
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: ipaddress
ATTRVIZ: 3
ATTRDESC:: eod
The IP address of the server to connect to.
eod

ATTR: port
ATTRID: 4
ATTRHDRNAME: AO_REMOTESERVER_PORT
ATTRTYPE: AT_INT
ATTRMCDPATH: port
ATTRVIZ: 5
ATTRDESC:: eod
The port on the remote server to connect to.
eod

ATTR: secret
ATTRID: 5
ATTRHDRNAME: AO_REMOTESERVER_SECRET
ATTRTYPE: AT_STRING
ATTRMCDPATH: Secret
ATTRVIZ: 3

ATTR: username
ATTRID: 6
ATTRHDRNAME: AO_REMOTESERVER_USERNAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: username
ATTRVIZ: 5
ATTRDESC:: eod
The name of a user with access to the parts of the
directory that DHCP will use. (LDAP servers can be
configured to allow anonymous access, so this is optional).
eod

ATTR: password
ATTRID: 7
ATTRHDRNAME: AO_REMOTESERVER_PASSWORD
ATTRTYPE: AT_STRING
ATTRMCDPATH: password
ATTRVIZ: 5
ATTRDESC:: eod
The password of a user with access to the parts of the
directory that DHCP will use. (LDAP servers can be configured
to allow anonymous access, so this is optional).
eod

# server flags. SSL is a no-op for now.

ATTR: flags
ATTRID: 8
ATTRHDRNAME: AO_REMOTESERVER_FLAGS
ATTRTYPE: AT_FLAGSINT(USESSL=1, KEEPALLSTATE=2, UPDATERENEWALS=3)
ATTRMCDPATH: flags
ATTRVIZ: 3
ATTRDEFVAL: KEEPALLSTATE,UPDATERENEWALS
ATTRFLAGS: AF_REQUIRED
ATTRFEAT: type=LDAP
ATTRDESC:: eod
Flags that control some aspects of lease-state update processing which
may need to be modified for performance tuning. If KEEPALLSTATE, the
server will update the directory when leases expire or are released;
otherwise it will remove the attributes that held lease data when
leases are freed. If UPDATERENEWALS, the server will keep ldap
attributes up-to-date each time a lease is renewed; otherwise,
it will only update the directory when a lease is initially leased,
and again when the lease becomes available.
eod
# starting point in the directory for queries

ATTR: search-path
ATTRID: 9
ATTRHDRNAME: AO_REMOTESERVER_SEARCHPATH
ATTRTYPE: AT_STRING
ATTRMCDPATH: SearchPath
ATTRVIZ: 5
ATTRFEAT: 16 && type=LDAP
ATTRDESC:: eod
The name of an object in the directory to use as a query's
starting-point. Together, the path and the search-scope control the
portion of the directory that the server will search.
eod

# query search scope

ATTR: search-scope
ATTRID: 10
ATTRHDRNAME: AO_REMOTESERVER_SEARCHSCOPE
ATTRTYPE: AT_ENUMINT(BASE=0, ONELEVEL=1, SUBTREE=2)
ATTRMCDPATH: SearchScope
ATTRDEFVAL: 2
ATTRVIZ: 5
ATTRFLAGS: AF_PRINT_ALT, AF_INITIALIZE
ATTRFEAT: 16 && type=LDAP
ATTRDESC:: eod
If you specify the  scope to be SUBTREE, the server will search all
the children of the searchpath. If you specify the scope to be
ONELEVEL, the server will only search the immediate children of
the base object. If you specify the scope to be BASE, the server
will only search the base object itself.
eod

# filter string (with %s or %token%) for queries

ATTR: search-filter
ATTRID: 11
ATTRHDRNAME: AO_REMOTESERVER_SEARCHFILTER
ATTRTYPE: AT_STRING
ATTRMCDPATH: Filter
ATTRVIZ: 5
ATTRFEAT: 16 && type=LDAP
ATTRDESC:: eod
The filter to apply in the client-entry query. The server formats
the client's MAC address using the filter to specify the object that
contains the client-entry data.
eod

# name of attribute to format into query filter string

ATTR: search-attribute
ATTRID: 12
ATTRHDRNAME: AO_REMOTESERVER_SEARCHATTR
ATTRTYPE: AT_STRING
ATTRMCDPATH: searchattribute
ATTRVIZ: 3
ATTRFEAT: 16 && type=LDAP
ATTRDESC:: eod
The dhcp attribute specified by the search-attribute (e.g. the
client's MAC address) will be formatted using the search-filter to
specify the object that contains the client data.
eod
# size of heap for background LDAP client thread

ATTR: threadheapsize
ATTRID: 13
ATTRHDRNAME: AO_REMOTESERVER_THREADHEAPSZ
ATTRTYPE: AT_INT
ATTRFLAGS: AF_INITIALIZE
ATTRMCDPATH: threadheapsize
ATTRDEFVAL: 4096
ATTRVIZ: 3
ATTRFEAT: type=LDAP
ATTRDESC:: eod
Size (in bytes) of the thread heap for each background LDAP client
threads.
eod
# initial msecs wait time for polling LDAP client thread

ATTR: threadwaittime
ATTRID: 14
ATTRHDRNAME: AO_REMOTESERVER_THREADWAITTIME
ATTRTYPE: AT_MSTIME
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 100
ATTRMCDPATH: threadwaittime
ATTRVIZ: 5
ATTRFEAT: type=LDAP
ATTRDESC:: eod
The interval (in milliseconds) at which each LDAP client connection
polls for results, if it has outstanding queries or updates.
eod

# secs timeout for an individual LDAP transaction

ATTR: timeout
ATTRID: 15
ATTRHDRNAME: AO_REMOTESERVER_TIMEOUT
ATTRTYPE: AT_TIME
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 10
ATTRMCDPATH: timeout
ATTRVIZ: 5
ATTRFEAT: type=LDAP
ATTRDESC:: eod
Number of seconds DHCP server should wait for a response to an
individual LDAP update or create request. After a LDAP create or
update request times out, DHCP server will resubmit it to other LDAP
connections. Further, if DHCP server does not receive any response
(i.e. result for LDAP update or create) from an LDAP connection for
timeout seconds, DHCP will mark this LDAP connection as 'Inactive' and
connection will be torn down and re-connected.

A timeout value of 10 seconds is a good value for LDAP create and
update.

Note that a separate timeout for LDAP query operations can be
configured using the query-timeout attribute.
eod

# can this LDAP server be used for queries?

ATTR: can-query
ATTRID: 16
ATTRHDRNAME: AO_REMOTESERVER_CANQUERY
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: can-query
ATTRVIZ: 5
ATTRFEAT: type=LDAP
ATTRDESC:: eod
Controls whether a particular LDAP server can be used for client
queries. See the query properties: env-dictionary, query-dictionary,
search-attribute, search-filter, search-path, and search-scope.
eod

# can this LDAP server be used for state updates?

ATTR: can-update
ATTRID: 17
ATTRHDRNAME: AO_REMOTESERVER_CANUPDATE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: can-update
ATTRVIZ: 5
ATTRFEAT: type=LDAP
ATTRDESC:: eod
Controls whether a particular LDAP server can be used to store lease
state updates. See the update properties: update-dictionary,
update-search-attribute, update-search-filter, update-search-path
update-search-scope.
eod

# limit outstanding requests on a single connection - performance
#    improvement on some LDAP servers

ATTR: limit-requests
ATTRID: 18
ATTRHDRNAME: AO_REMOTESERVER_LIMITREQUESTS
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: limit-requests
ATTRVIZ: 5
ATTRFEAT: type=LDAP
ATTRDESC:: eod
Controls whether there should be a limit on the number of outstanding
queries on each LDAP client connection. See the limit property:
max-requests.
eod

# if LIMITREQUESTS, this is the limit on outstanding
#    queries on a single client connection

ATTR: max-requests
ATTRID: 19
ATTRHDRNAME: AO_REMOTESERVER_MAXREQUESTS
ATTRTYPE: AT_INT
ATTRFLAGS: AF_INITIALIZE
ATTRMCDPATH: maxrequests
ATTRVIZ: 5
ATTRFEAT: 18 && type=LDAP
ATTRDEFVAL: 20
ATTRDESC:: eod
If you have set the 'limit-requests' feature to TRUE, any single
LDAP connection will limit the number of outstanding queries to
'max-requests.' You can improve performance by limiting the
number of outstanding queries.
eod
# attempt to reconnect with a downed LDAP server at this interval
#    (in seconds)

ATTR: reactivate-interval
ATTRID: 20
ATTRHDRNAME: AO_REMOTESERVER_REACTIVATETIME
ATTRTYPE: AT_TIME
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 60
ATTRMCDPATH: ReactivateTimerInterval
ATTRVIZ: 3
ATTRFEAT: type=LDAP
ATTRDESC:: eod
If an LDAP client connection goes down, the dhcp server will wait this
many seconds between reconnection attempts.
eod
# filter to use when processing a referral

ATTR: referral-filter
ATTRID: 21
ATTRHDRNAME: AO_REMOTESERVER_REFERRALFILTER
ATTRTYPE: AT_STRING
ATTRMCDPATH: referral-filter
ATTRVIZ: 5
ATTRFEAT: type=LDAP
ATTRDESC:: eod
If the referral attribute does not contain a DN, the server formats
the referral-attr's data with this filter expression to build a
search path using the existing search-scope for the LDAP server.
eod
# name of attribute to use when processing a referral

ATTR: referral-attr
ATTRID: 22
ATTRHDRNAME: AO_REMOTESERVER_REFERRALATTR
ATTRTYPE: AT_STRING
ATTRMCDPATH: referral-attr
ATTRVIZ: 5
ATTRFEAT: type=LDAP
ATTRDESC:: eod
The name of the LDAP attribute that may indicate that an LDAP
response is a referral. The referral may or may not contain the DN
to query for. If the DN is present (the server currently assumes
this), the server uses it as the search path, along with a wildcard
search-scope in the query that follows the referral. If not,
the server builds the search path by formatting the data in the
referral attribute with the referral-filter, using the existing
search scope.
eod
# max referrals to process before dropping

ATTR: max-referrals
ATTRID: 23
ATTRHDRNAME: AO_REMOTESERVER_MAXREFERRALS
ATTRTYPE: AT_INT
ATTRDEFVAL: 0
ATTRMCDPATH: max-referrals
ATTRVIZ: 5
ATTRFEAT: type=LDAP
ATTRDESC:: eod
The limit on the number of LDAP referrals the server will follow
when querying. A value of zero means 'don't follow referrals.'
eod
# number of client connections to make

ATTR: connections
ATTRID: 24
ATTRHDRNAME: AO_REMOTESERVER_CONNECTIONS
ATTRTYPE: AT_INT
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 1
ATTRMCDPATH: connections
ATTRVIZ: 5
ATTRFEAT: type=LDAP
ATTRDESC:: eod
The number of connections that that the server should make to a
particular LDAP server. This is primarily a performance-tuning
parameter. In some cases, more than one connection can improve overall
throughput.
eod
# preference: allows ordered list of servers for failover

ATTR: preference
ATTRID: 25
ATTRHDRNAME: AO_REMOTESERVER_PREFERENCE
ATTRTYPE: AT_INT
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 1
ATTRMCDPATH: preference
ATTRVIZ: 5
ATTRFEAT: type=LDAP
ATTRDESC:: eod
A positive integer greater than or equal to one. You can specify
that LDAP servers are used in preference order. One is the highest
preference value.
eod
# starting point in the directory for pre-update queries

ATTR: update-search-path
ATTRID: 26
ATTRHDRNAME: AO_REMOTESERVER_UPDATESEARCHPATH
ATTRTYPE: AT_STRING
ATTRMCDPATH: ModifySearchPath
ATTRVIZ: 5
ATTRFEAT: 17 && type=LDAP
ATTRDESC:: eod
The starting point for the portion of the directory that contains
the LDAP objects that the server will update.
eod
# pre-update query search scope

ATTR: update-search-scope
ATTRID: 27
ATTRHDRNAME: AO_REMOTESERVER_UPDATESEARCHSCOPE
ATTRTYPE: AT_ENUMINT(BASE=0, ONELEVEL=1, SUBTREE=2)
ATTRMCDPATH: update-searchscope
ATTRVIZ: 5
ATTRFLAGS: AF_PRINT_ALT
ATTRFEAT: 17 && type=LDAP
ATTRDESC:: eod
The update-search-path and the update-search-scope together control
the portion of the directory that contains the objects to be updated.
The scope can be SUBTREE (includes all children of the searchpath),
ONELEVEL (includes only the immediate children of the base object),
or BASE (includes only the base object itself).
eod
# filter string (with %s or %token%) for pre-update queries

ATTR: update-search-filter
ATTRID: 28
ATTRHDRNAME: AO_REMOTESERVER_UPDATESEARCHFILTER
ATTRTYPE: AT_STRING
ATTRMCDPATH: ModifySearchFilter
ATTRVIZ: 5
ATTRFEAT: 17 && type=LDAP
ATTRDESC:: eod
If the DN of the object to be updated cannot be determined directly,
the DHCP server must issue a query to retrieve the DN. In that case,
the DHCP server uses data in the lease's 'search-attribute,' and
formats it using the 'update-search-filter' expression.
eod
# name of lease attribute to format into pre-update query filter string

ATTR: update-search-attribute
ATTRID: 29
ATTRHDRNAME: AO_REMOTESERVER_UPDATESEARCHATTR
ATTRTYPE: AT_STRING
ATTRMCDPATH: update-searchattribute
ATTRVIZ: 5
ATTRFEAT: 17 && type=LDAP
ATTRDESC:: eod
If the DN of the object to be updated cannot be determined directly,
the DHCP server must issue a query to retrieve the DN. In that case,
the DHCP server uses data in the lease's 'search-attribute,' and
formats it using the 'update-search-filter' expression.
eod
# format string (with tokens or %s), used if DN can be
#    generated directly from state-update data

ATTR: dn-format
ATTRID: 30
ATTRHDRNAME: AO_REMOTESERVER_DNFORMAT
ATTRTYPE: AT_STRING
ATTRMCDPATH: dn-format
ATTRVIZ: 5
ATTRFEAT: 17 && type=LDAP
ATTRDESC:: eod
If the DN of the ldap object that is to be updated can be constructed
from one of the lease's attributes, the specified dn-attribute will
be formatted using the dn-format string to construct the query filter.
eod

# attribute name to use in the dn-format string

ATTR: dn-attribute
ATTRID: 31
ATTRHDRNAME: AO_REMOTESERVER_DNATTR
ATTRTYPE: AT_STRING
ATTRMCDPATH: dn-attribute
ATTRVIZ: 5
ATTRFEAT: 17 && type=LDAP
ATTRDESC:: eod
If the DN of the ldap object that is to be updated can be constructed
from one of the lease's attributes, the specified dn-attribute will
be formatted using the dn-format string to construct the query filter.
eod

# dictionary of LDAP attr names to obj attr names

ATTR: query-dictionary
ATTRID: 32
ATTRHDRNAME: AO_REMOTESERVER_QUERYDICT
ATTRTYPE: AT_DICT(AT_STRING)
ATTRMCDPATH: query-dictionary
ATTRVIZ: 5
ATTRFEAT: 16 && type=LDAP
ATTRDESC:: eod
A mapping between the names of ldap attributes and dhcp attributes.
The server will attempt to retrieve all of the ldap attributes
specified in the dictionary. When a query succeeds, the values for
any ldap attributes that it returns will be set in the corresponding
client-entry attribute.
eod
# dictionary of LDAP attr names to arbitrary strings

ATTR: env-dictionary
ATTRID: 33
ATTRHDRNAME: AO_REMOTESERVER_ENVDICT
ATTRTYPE: AT_DICT(AT_STRING)
ATTRMCDPATH: env-dictionary
ATTRVIZ: 5
ATTRFEAT: 16 && type=LDAP
ATTRDESC:: eod
The environment dictionary allows the server to retrieve additional
ldap attributes along with client-entry attributes. If any of these
are present in a query's results, their values are made available to
scripts through the request's environment dictionary. The ldap value
is keyed by the value in the ldap query env-dictionary.
eod
# RemoteServer types
# dictionary of LDAP attr names to obj attr names

ATTR: update-dictionary
ATTRID: 34
ATTRHDRNAME: AO_REMOTESERVER_UPDATEDICT
ATTRTYPE: AT_DICT(AT_STRING)
ATTRMCDPATH: update-dictionary
ATTRVIZ: 5
ATTRFEAT: 17 && type=LDAP
ATTRDESC:: eod
The update dictionary maps ldap attributes to dhcp lease attributes.
When an ldap object is modified, each ldap attribute that is present
in this dictionary will be set to the value of its corresponding DHCP
lease attribute.

SEE ALSO
nrcmd documentation
eod

ATTR: type
ATTRID: 35
ATTRHDRNAME: AO_REMOTESERVER_TYPE
ATTRTYPE: AT_ENUMINT(LDAP=1, DNS=2, LOG=3)
ATTRMCDPATH: type
ATTRVIZ: 3
ATTRFLAGS: AF_PRINT_ALT
ATTRDESC:: eod
The 'remote server' class is internal right now. This doens't need to
be visible.
eod

# can this LDAP server be used for state updates?

ATTR: can-create
ATTRID: 36
ATTRHDRNAME: AO_REMOTESERVER_CANCREATE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: can-create
ATTRVIZ: 5
ATTRFEAT: type=LDAP
ATTRDESC:: eod
Controls whether a particular LDAP server can create new entries
to be used to store lease state updates. See the create properties:
create-dictionary, create-string-dictionary, dn-create-format,
create-object-classes.
eod

# dictionary of LDAP attr names to obj attr names

ATTR: create-dictionary
ATTRID: 37
ATTRHDRNAME: AO_REMOTESERVER_CREATEDICT
ATTRTYPE: AT_DICT(AT_STRING)
ATTRMCDPATH: create-dictionary
ATTRVIZ: 5
ATTRFEAT: 36 && type=LDAP
ATTRDESC:: eod
The create dictionary maps ldap attributes to dhcp lease attributes.
If an entry does not exist and needs to be created, entries in this
dictionary will be set to the value of its corresponding DHCP
lease attribute.
eod


# format string (with tokens or %s), used if DN can be
#    generated directly from state-update data

ATTR: dn-create-format
ATTRID: 38
ATTRHDRNAME: AO_REMOTESERVER_DNCREATEFORMAT
ATTRTYPE: AT_STRING
ATTRMCDPATH: dn-create-format
ATTRVIZ: 5
ATTRFEAT: 36 && type=LDAP
ATTRDESC:: eod
If the DN of the ldap object that is to be created can be constructed
from one of the lease's attributes, the specified dn-attribute will
be formatted using the dn-format string.
eod

ATTR: create-object-classes
ATTRID: 39
ATTRHDRNAME: AO_REMOTESERVER_DNCREATEOBJECTCLASSES
ATTRTYPE: AT_STRING
ATTRMCDPATH: create-object-classes
ATTRVIZ: 5
ATTRFEAT: 36 && type=LDAP
ATTRDESC:: eod
If can-create is enabled, this specifies the object classes from which
a new entry will inherit.
eod

# dictionary of LDAP attr names to arbitrary strings

ATTR: create-string-dictionary
ATTRID: 40
ATTRHDRNAME: AO_REMOTESERVER_CREATESTRINGDICT
ATTRTYPE: AT_DICT(AT_STRING)
ATTRMCDPATH: create-string-dictionary
ATTRVIZ: 5
ATTRFEAT: 36 && type=LDAP
ATTRDESC:: eod
The create string dictionary maps ldap attributes to user specified
strings. If an entry does not exist and needs to be created, entries
in this dictionary will be set to the the matching string.
eod

ATTR: default-attribute-value
ATTRID: 41
ATTRHDRNAME: AO_REMOTESERVER_DEFAULTATTRIBVALUE
ATTRTYPE: AT_STRING
ATTRDEFVALUE: <default>
ATTRMCDPATH: default-attribute-value
ATTRVIZ: 5
ATTRFEAT: 36 && type=LDAP
ATTRDESC:: eod
The default attribute value is a string to put in any LDAP
attribute whose associated lease attribute values are not
present in the lease.
SEE ALSO
nrcmd documentation
eod

ATTR: protocol-version
ATTRID: 42
ATTRHDRNAME: AO_REMOTESERVER_PROTOCOL_VERSION
ATTRTYPE: AT_INT
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 2
ATTRMCDPATH: protocol-version
ATTRVIZ: 3
ATTRFEAT: type=LDAP
ATTRDESC:: eod
Specifies LDAP protocol version that CNR should use while connecting
to the LDAP server. By default, CNR uses LDAP protocol standard
version 2 (LDAPv2). To configure CNR to use LDAPv3, set the
protocol-version to 3.
eod

ATTR: query-timeout
ATTRID: 43
ATTRHDRNAME: AO_REMOTESERVER_QUERY_TIMEOUT
ATTRTYPE: AT_TIME
ATTRDEFVAL: 3
ATTRMCDPATH: query-timeout
ATTRVIZ: 5
ATTRFEAT: type=LDAP
ATTRDESC:: eod
Number of seconds DHCP server should wait for a response to individual
LDAP Query requests. After a query request times out, DHCP server will
drop the request and not process it again on another LDAP connection
or LDAP Server.

A query-timeout value of 3 seconds is a good value.

Note that the timeout attribute configures the timeout for LDAP Update
and Create requests.
eod

CLASS: EventService
CLASSROOT: EVENTSERVICE
CLASSID: 1113
CLASSVIZ: 3
CLASSNAME: 2
CLASSKEY: 1
CLASSNAMEDESC:: eod
The names of EventService objects are directly associated with the
type of the event service (which is stored in the handle attribute).
The valid names are the enumerator strings of the handle attribute.
eod
CLASSDESC:: eod
Ask Mark
eod

# printable name
ATTR: print-name
ATTRID: 1
ATTRHDRNAME: AO_EVENTSERVICE_NAME
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_UNIQUE
ATTRMCDPATH: name
ATTRVIZ: 0
ATTRDESC:: eod
eod

# unique 32-bit handle
ATTR: handle
ATTRID: 2
ATTRHDRNAME: AO_EVENTSERVICE_HANDLE
ATTRTYPE: AT_ENUMINT(DNS=1, MCD=2, LDAP=3, MLOG=4, FAILOVER=5, TEST=99)
ATTRFLAGS: AF_IMMUTABLE | AF_PRINT_ALT
ATTRMCDPATH: EventServiceHandle
ATTRVIZ: 5
ATTRDESC:: eod
eod

# on or off
ATTR: enabled
ATTRID: 3
ATTRHDRNAME: AO_EVENTSERVICE_ENABLED
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRFLAGS: AF_PRINT_ONOFF,AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: Enabled
ATTRVIZ: 5
ATTRDESC:: eod
eod

# some Services can run w/multiple threads, drawn from the
#    server-wide pool in the Framework
ATTR: maxthreads
ATTRID: 4
ATTRHDRNAME: AO_EVENTSERVICE_MAXTHREADS
ATTRTYPE: AT_INT
ATTRMCDPATH: MaxThreads
ATTRVIZ: 3
ATTRDESC:: eod
eod

# Services can keep an aging list of packets they've received
#    but not processed: after this limit is reached, the oldest
#    packets will be deleted
ATTR: max-replies
ATTRID: 5
ATTRHDRNAME: AO_EVENTSERVICE_MAXREPLIES
ATTRTYPE: AT_INT
ATTRMCDPATH: maxreplies
ATTRVIZ: 3

# max. retries (usually only for a UDP-based Service)
ATTR: retries
ATTRID: 6
ATTRHDRNAME: AO_EVENTSERVICE_RETRIES
ATTRTYPE: AT_INT
ATTRMCDPATH: retries
ATTRVIZ: 3

# size of buffers for (UDP ?) data packets
ATTR: packet-size
ATTRID: 7
ATTRHDRNAME: AO_EVENTSERVICE_PACKETSIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: packetsize
ATTRVIZ: 3

# limit on the number of Events a Service's threads will process
#    before being returned to the Framework's thread pool
ATTR: worklimit
ATTRID: 8
ATTRHDRNAME: AO_EVENTSERVICE_WORKLIMIT
ATTRTYPE: AT_INT
ATTRMCDPATH: worklimit
ATTRVIZ: 3
ATTRVIZ: 3

# initial (UDP) timeout before a retry.
ATTR: timeout
ATTRID: 9
ATTRHDRNAME: AO_EVENTSERVICE_TIMEOUT
ATTRTYPE: AT_MSTIME
ATTRMCDPATH: timeout
ATTRVIZ: 3

#
# Deprecated in 6.0 use/see rmoteservers-list
#

# the RemoteServers that this Service knows about
ATTR: remoteservers
ATTRID: 11
ATTRHDRNAME: AO_EVENTSERVICE_XXXREMOTESERVERS
ATTRTYPE: AT_SET(AT_NAMEREF(RemoteServer))
ATTRMCDPATH: remoteservers
ATTRVAL: 1112
ATTRVIZ: 3

# for LDAP service: should the service persist and retry an update
# Event if one arrives and there are no RemoteServers configured to
# process db updates?
ATTR: retry-updates
ATTRID: 12
ATTRHDRNAME: AO_EVENTSERVICE_RETRY_UPDATES
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: retryupdates
ATTRVIZ: 3

ATTR: max-validating
ATTRID: 13
ATTRHDRNAME: AO_EVENTSERVICE_MAX_VALIDATING
ATTRTYPE: AT_INT
ATTRMCDPATH: maxvalidating
ATTRVIZ: 3
ATTRDESC:: eod
If a service persists its events, it has to validate them
each time it restarts. This limit throttles the number
of simultaneous events any single service will try to
validate simultaneously.
eod

ATTR: enable-persist
ATTRID: 14
ATTRHDRNAME: AO_EVENTSERVICE_ENABLE_PERSIST
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: true
ATTRMCDPATH: enablepersist
ATTRVIZ: 3
ATTRDESC:: eod
If false, a service will not persist any Events.
eod

# limit on the number of requests (ie.e. Events) a Service will
# allow to have outstanding at a single RemoteServer
ATTR: max-requests
ATTRID: 15
ATTRHDRNAME: AO_EVENTSERVICE_MAX_REQUESTS
ATTRTYPE: AT_INT
ATTRMCDPATH: max-requests
ATTRVIZ: 3
ATTRDESC:: eod
Apply a global limit on the number of simultaneous outstanding
requests a Service will allow at any one remote server.
eod

# the RemoteServers that this Service knows about
ATTR: remoteservers-list
ATTRID: 16
ATTRTYPE: AT_NLIST(AT_OBJ(RemoteServer))
# 1<<16 | 1112
ATTRVAL: 66648
ATTRMCDPATH: remoteservers
ATTRVIZ: 3


# DNS service blob
CLASS: DnsReq
CLASSROOT: DNSREQ
CLASSID: 1114
CLASSNAME: 1
CLASSVIZ: 3
CLASSDESC:: eod
Ask Mark
eod

ATTR: dnsreq-ttl
ATTRID: 1
ATTRHDRNAME: AO_DNSREQ_TTL
ATTRTYPE: AT_INT
ATTRMCDPATH: dnsreq-ttl

ATTR: dnsreq-client-id
ATTRID: 2
ATTRHDRNAME: AO_DNSREQ_CLIENT_ID
ATTRTYPE: AT_STRING
ATTRMCDPATH: dnsreq-client-id

ATTR: dnsreq-old-hostname
ATTRID: 3
ATTRHDRNAME: AO_DNSREQ_OLD_HOSTNAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: dnsreq-old-hostname

ATTR: dnsreq-old-ip-address
ATTRID: 4
ATTRHDRNAME: AO_DNSREQ_OLD_IP_ADDRESS
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: dnsreq-old-ip-address

ATTR: dnsreq-old-fwd-server
ATTRID: 5
ATTRHDRNAME: AO_DNSREQ_OLD_FWD_SERVER
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: dnsreq-old-fwd-server

ATTR: dnsreq-old-fwd-zone
ATTRID: 6
ATTRHDRNAME: AO_DNSREQ_OLD_FWD_ZONE
ATTRTYPE: AT_STRING
ATTRMCDPATH: dnsreq-old-fwd-zone

ATTR: dnsreq-old-rev-server
ATTRID: 7
ATTRHDRNAME: AO_DNSREQ_OLD_REV_SERVER
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: dnsreq-old-rev-server

ATTR: dnsreq-old-rev-zone
ATTRID: 8
ATTRHDRNAME: AO_DNSREQ_OLD_REV_ZONE
ATTRTYPE: AT_STRING
ATTRMCDPATH: dnsreq-old-rev-zone

ATTR: dnsreq-new-hostname
ATTRID: 9
ATTRHDRNAME: AO_DNSREQ_NEW_HOSTNAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: dnsreq-new-hostname

ATTR: dnsreq-new-ip-address
ATTRID: 10
ATTRHDRNAME: AO_DNSREQ_NEW_IP_ADDRESS
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: dnsreq-new-ip-address

ATTR: dnsreq-new-fwd-server
ATTRID: 11
ATTRHDRNAME: AO_DNSREQ_NEW_FWD_SERVER
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: dnsreq-new-fwd-server

ATTR: dnsreq-new-fwd-zone
ATTRID: 12
ATTRHDRNAME: AO_DNSREQ_NEW_FWD_ZONE
ATTRTYPE: AT_STRING
ATTRMCDPATH: dnsreq-new-fwd-zone

ATTR: dnsreq-new-rev-server
ATTRID: 13
ATTRHDRNAME: AO_DNSREQ_NEW_REV_SERVER
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: dnsreq-new-rev-server

ATTR: dnsreq-new-rev-zone
ATTRID: 14
ATTRHDRNAME: AO_DNSREQ_NEW_REV_ZONE
ATTRTYPE: AT_STRING
ATTRMCDPATH: dnsreq-new-rev-zone

ATTR: dnsreq-old-ip-address
ATTRID: 15
ATTRHDRNAME: AO_DNSREQ_OLD_IP_ADDR
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: dnsreq-old-ip-address

ATTR: dnsreq-result-flags
ATTRID: 16
ATTRHDRNAME: AO_DNSREQ_RESULT_FLAGS
ATTRTYPE: AT_FLAGSINT(UPDATED_FWD=1, UPDATED_REV=2)
ATTRMCDPATH: dnsreq-result-flags

ATTR: dnsreq-disambiguated-hostname
ATTRID: 17
ATTRHDRNAME: AO_DNSREQ_DISAMBIGUATED_HOSTNAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: dnsreq-disambiguated-hostname

ATTR: dnsreq-name-num
ATTRID: 18
ATTRHDRNAME: AO_DNSREQ_NAME_NUM
ATTRTYPE: AT_INT
ATTRMCDPATH: dnsreq-name-num

ATTR: dnsreq-last-name-num-len
ATTRID: 19
ATTRHDRNAME: AO_DNSREQ_LAST_NAME_NUM_LEN
ATTRTYPE: AT_INT
ATTRMCDPATH: dnsreq-last-name-num-len

ATTR: dnsreq-result-code
ATTRID: 20
ATTRHDRNAME: AO_DNSREQ_RESULT_CODE
ATTRTYPE: AT_INT
ATTRMCDPATH: dnsreq-result-code

ATTR: old-host-bytes
ATTRID: 21
ATTRHDRNAME: AO_DNSREQ_OLD_HOST_BYTES
ATTRTYPE: AT_INT
ATTRDESC:: eod
eod

ATTR: new-host-bytes
ATTRID: 22
ATTRHDRNAME: AO_DNSREQ_NEW_HOST_BYTES
ATTRTYPE: AT_INT
ATTRDESC:: eod
eod

ATTR: client-class-name
ATTRID: 23
ATTRHDRNAME: AO_DNSREQ_CLIENTCLASS_NAME
ATTRTYPE: AT_STRING
ATTRDESC:: eod
eod

ATTR: client-mac-addr
ATTRID: 24
ATTRHDRNAME: AO_DNSREQ_CLIENT_MACADDR
ATTRTYPE: AT_MACADDR
ATTRDESC:: eod
eod

ATTR: new-vpn-id
ATTRID: 25
ATTRHDRNAME: AO_DNSREQ_NEW_VPN
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REFERENCE
# Encode attribute 4 of Vpn(1127) as 4<<16 + 1127 == 263271
ATTRVAL: 263271
ATTRDESC:: eod
eod

ATTR: old-vpn-id
ATTRID: 26
ATTRHDRNAME: AO_DNSREQ_OLD_VPN
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REFERENCE
# Encode attribute 4 of Vpn(1127) as 4<<16 + 1127 == 263271
ATTRVAL: 263271
ATTRDESC:: eod
eod

ATTR: tsig-request-key-name
ATTRID: 27
ATTRHDRNAME: AO_DNSREQ_TSIG_KEY_NAME
ATTRTYPE: AT_DNSNAME
ATTRDESC:: eod
eod

ATTR: tsig-request-mac
ATTRID: 28
ATTRHDRNAME: AO_DNSREQ_TSIG_MAC
ATTRTYPE: AT_BLOB
ATTRDESC:: eod
eod

ATTR: tsig-request-mac-size
ATTRID: 29
ATTRHDRNAME: AO_DNSREQ_TSIG_REQUEST_MAC_SIZE
ATTRTYPE: AT_INT
ATTRDESC:: eod
eod

ATTR: dynamic-dns-fwd-key
ATTRID: 30
ATTRHDRNAME: AO_DNSREQ_FWD_KEY
ATTRTYPE: AT_DNSNAME
ATTRDESC:: eod
eod

ATTR: dynamic-dns-rev-key
ATTRID: 31
ATTRHDRNAME: AO_DNSREQ_REV_KEY
ATTRTYPE: AT_DNSNAME
ATTRDESC:: eod
eod

ATTR: dynamic-dns-tsig
ATTRID: 32
ATTRHDRNAME: AO_DNSREQ_TSIG
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDESC:: eod
eod

#############################################
# FAILOVER
# F A I L O V E R
#############################################

CLASS: DhcpFailover
CLASSROOT: FAILOVER
CLASSID: 1115
CLASSVIZ: 3
CLASSDESC:: eod
Ask Mark
eod

ATTR: server-name
ATTRID: 1
ATTRHDRNAME: AO_FAILOVER_SERVER_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: server-name

ATTR: server-ip-addr
ATTRID: 2
ATTRHDRNAME: AO_FAILOVER_SERVER_IP_ADDR
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: server-ip-addr

ATTR: other-server-name
ATTRID: 3
ATTRHDRNAME: AO_FAILOVER_OTHER_SERVER_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: other-server-name

ATTR: other-server-addr
ATTRID: 4
ATTRHDRNAME: AO_FAILOVER_OTHER_SERVER_IP_ADDR
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: other-server-addr

ATTR: mclt
ATTRID: 5
ATTRHDRNAME: AO_FAILOVER_MCLT
ATTRTYPE: AT_TIME
ATTRFLAGS: AF_PRINT_ALT
ATTRMCDPATH: mclt

ATTR: state
ATTRID: 6
ATTRHDRNAME: AO_FAILOVER_STATE
ATTRTYPE: AT_INT
ATTRMCDPATH: state

ATTR: other-state
ATTRID: 7
ATTRHDRNAME: AO_FAILOVER_OTHER_STATE
ATTRTYPE: AT_INT
ATTRMCDPATH: other-state

ATTR: version
ATTRID: 8
ATTRHDRNAME: AO_FAILOVER_VERSION
ATTRTYPE: AT_INT
ATTRMCDPATH: version

ATTR: comm-normal
ATTRID: 9
ATTRHDRNAME: AO_FAILOVER_COMM_NORMAL
ATTRTYPE: AT_INT
ATTRMCDPATH: comm-normal
ATTRDESC:: eod
Specifies the state of communications with the specified partner.
eod

ATTR: flags
ATTRID: 10
ATTRHDRNAME: AO_FAILOVER_FLAGS
ATTRTYPE: AT_INT
ATTRMCDPATH: flags
ATTRDESC:: eod
The value of the 'flags' field of a failover protocol message.
eod

ATTR: partner-flags
ATTRID: 11
ATTRHDRNAME: AO_FAILOVER_PARTNER_FLAGS
ATTRTYPE: AT_INT
ATTRMCDPATH: partner-flags
ATTRDESC:: eod
The expected value of the partner's 'flags' field in its failover
protocol messages.
eod

# the current server's failover role
ATTR: failover-role
ATTRID: 12
ATTRHDRNAME: AO_FAILOVER_ROLE
ATTRTYPE: AT_ENUMINT(backup=0, primary=1)
ATTRVIZ: 3
ATTRDESC:: eod
The current server's failover role.
eod

ATTR: start-time-of-state
ATTRID: 13
ATTRHDRNAME: AO_FAILOVER_START_TIME_OF_STATE
ATTRTYPE: AT_DATE
ATTRMCDPATH: start-time-of-state
ATTRVIZ: 3
ATTRDESC:: eod
The time at which the state last changed to
its current value.
eod

ATTR: start-communications-interrupted
ATTRID: 14
ATTRHDRNAME: AO_FAILOVER_START_COMMUNICATIONS_INTERRUPTED
ATTRTYPE: AT_DATE
ATTRMCDPATH: start-communications-interrupted
ATTRVIZ: 3
ATTRDESC:: eod
The time at which communications was last interrupted.
This is not necessarily equal to (and may be later than)
the start-time-of-state if the current state is
COMMUNICATIONS-INTERRUPTED.
eod

ATTR: partner-start-time-of-state
ATTRID: 15
ATTRHDRNAME: AO_FAILOVER_PARTNER_START_TIME_OF_STATE
ATTRTYPE: AT_DATE
ATTRMCDPATH: partner-start-time-of-state
ATTRVIZ: 3
ATTRDESC:: eod
If present, the time at which the partner's state
last changed.
eod

ATTR: time-stamp
ATTRID: 16
ATTRHDRNAME: AO_FAILOVER_TIME_STAMP
ATTRTYPE: AT_DATE
ATTRMCDPATH: time-stamp
ATTRVIZ: 3
ATTRDESC:: eod
The time at which this state was written to MCD.
eod

ATTR: vendor-class-id
ATTRID: 17
ATTRHDRNAME: AO_FAILOVER_VENDOR_CLASS_ID
ATTRTYPE: AT_STRING
ATTRMCDPATH: vendor-class-id
ATTRVIZ: 3
ATTRDESC:: eod
The vendor-id string out of any Option 60, vendor-class-id,
in a packet.
eod


ATTR: communicated-in-current-state
ATTRID: 18
ATTRHDRNAME: AO_FAILOVER_COMMUNICATED_IN_CURRENT_STATE
ATTRTYPE: AT_INT
ATTRMCDPATH: communicated-in-current-state
ATTRDESC:: eod
Indicates whether this failover object has communicated with the
partner since it entered this state.
eod

ATTR: complete-recover
ATTRID: 19
ATTRHDRNAME: AO_FAILOVER_COMPLETE_RECOVER
ATTRTYPE: AT_DATE
ATTRMCDPATH: complete-recover
ATTRDESC:: eod
Indicates whether this failover object is undergoing a complete
recovery.  A value of 0 or missing means no, a non-zero value
means yes, with the non-zero value equal to the last time known
up (for the mclt wait).
eod

ATTR: sequence-number
ATTRID: 20
ATTRHDRNAME: AO_FAILOVER_SEQUENCE_NUMBER
ATTRTYPE: AT_VERSION
ATTRMCDPATH: sequence-number
ATTRVIZ: 3
ATTRDESC:: eod
Unique sequence number, which connects all current and up-to-date
leases that are associated to a failover server. Sequence number will
be maintained by the DHCP server and should not be modified.
eod

ATTR: last-communication-ok-time
ATTRID: 21
ATTRHDRNAME: AO_FAILOVER_LAST_COMMUNICATION_OK_TIME
ATTRTYPE: AT_INT
ATTRMCDPATH: last-communication-ok-time
ATTRVIZ: 3
ATTRDESC:: eod
Most recent time when communications between failover servers was ok.
This timestamp will be maintained by the DHCP server and should not
be modified.
eod

ATTR: other-server-down-time 
ATTRID: 22
ATTRHDRNAME: AO_FAILOVER_OTHER_SERVER_DOWN_TIME
ATTRTYPE: AT_DATE
ATTRMCDPATH: other-server-down-time
ATTRVIZ: 3
ATTRDESC:: eod
The time at which we were told the other server went down.
eod

CLASS: DhcpFailoverScopes
CLASSROOT: FAILOVERSCOPES
CLASSID: 1116
CLASSVIZ: 3
CLASSDESC:: eod
Ask Mark
eod

# a list of the names of the scopes associated with a partner server
ATTR: scope-list
ATTRID: 1
ATTRHDRNAME: AO_FAILOVERSCOPES_SCOPE_LIST
ATTRTYPE: AT_ARRAY(AT_STRING)
ATTRMCDPATH: scope-list
ATTRVIZ: 3
ATTRDESC:: eod
A list of the names of the scopes associated with a dhcp failover
partner server.
eod

########################################
# C l i e n t C l a s s
# ClientClass
########################################

CLASS: ClientClass
CLASSROOT: CC
CLASSID: 1117
CLASSNAME: 8
CLASSVIZ: 5
CLASSDESC:: eod
The ClientClass is a clone (for now) of the ClientEntry for storing
client class objects.  See the ClientEntry class description for
more details.
eod

ATTR: client-class-name
ATTRID: 1
ATTRHDRNAME: AO_CC_CLIENT_CLASS_NAME
ATTRTYPE: AT_STRING
ATTRVIZ: 0
ATTRDESC:: eod
Not used for client class
eod

ATTR: host-name
ATTRID: 2
ATTRHDRNAME: AO_CC_HOST_NAME
ATTRTYPE: AT_STRING
ATTRVIZ: 5

ATTR: domain-name
ATTRID: 3
ATTRHDRNAME: AO_CC_DOMAIN_NAME
ATTRTYPE: AT_STRING
ATTRVIZ: 5

ATTR: policy-name
ATTRID: 4
ATTRHDRNAME: AO_CC_POLICY_NAME
ATTRTYPE: AT_STRING
ATTRVIZ: 5
ATTRDESC:: eod
The name of the policy that should be used for this client-class.
eod

ATTR: action
ATTRID: 5
ATTRHDRNAME: AO_CC_ACTION
ATTRTYPE: AT_FLAGSINT(exclude=1,one-shot=2,use-release-grace-period=3,none=32)
ATTRVIZ: 5
ATTRDESC:: eod
The action to take for this client class.  You can specify exclude,
one-shot, and/or use-release-grace-period.

Exclude causes the server to ignore all communication from
this client. If you specify the exclude action in the default client
entry, then any client not specifically registered through the use of
the client command will not be allowed to communicate with the server.

One-shot causes the server to fail to renew or re-offer any lease made
to a client that has specified this action string (either
directly or in a client-class entry).  You can use the
one-shot action to allocate provisional addresses, which are
useful in cases in which you want an unknown client to have an
address for only a short period of time.

'Use-release-grace-period' causes the server to delay the effect of
any RELEASE messages the client sends. A Policy property called
'release-grace-period' specifies the delay.  During the grace period,
the client's lease won't be made available for any other client.
eod

ATTR: old-inclusion-mask
ATTRID: 6
ATTRHDRNAME: AO_CC_INCLUSION_MASK
ATTRTYPE: AT_INT
ATTRVIZ: 3
ATTRDESC:: eod
This attribute is not used.
eod

ATTR: old-exclusion-mask
ATTRID: 7
ATTRHDRNAME: AO_CC_EXCLUSION_MASK
ATTRTYPE: AT_INT
ATTRVIZ: 3
ATTRDESC:: eod
This attribute is not used.
eod

ATTR: name
ATTRID: 8
ATTRHDRNAME: AO_CC_NAME
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_UNIQUE
ATTRVIZ: 3
ATTRDESC:: eod
The name of this client class object.
eod

ATTR: authenticate-until
ATTRID: 9
ATTRHDRNAME: AO_CC_AUTHENTICATION_EXPIRES
ATTRTYPE: AT_DATE
ATTRVIZ: 5
ATTRDESC:: eod
Sets an authentication expiration date. Formats for the date are:

 +<num><unit>
   Time in the future, where num is a decimal number and unit is 
   s, m, h, d, or w for seconds, minutes, hours, days or weeks, 
   respectively.
 
 <month> <day> <hour>:<minute>[:<second>] <year>
   Month, day, 24-hour time, and 2-or-4-digit-year. 
   For example:Jun 30 20:00:00 2002. Enter the time that is local  
   to the nrcmd process. 
 
 forever
   Does not expire the authentication for this client.
eod

ATTR: authentication-sequence
ATTRID: 10
ATTRHDRNAME: AO_CC_AUTHENTICATION_SEQUENCE
ATTRTYPE: AT_INT
ATTRVIZ: 3
ATTRDESC:: eod
This attribute is not used.
eod

# Not used for client-class
ATTR: unauthenticated-client-class-name
ATTRID: 11
ATTRHDRNAME: AO_CC_UNAUTHENTICATED_CLIENT_CLASS_NAME
ATTRTYPE: AT_STRING
ATTRVIZ: 0

ATTR: user-defined
ATTRID: 12
ATTRHDRNAME: AO_CC_COOKIE_STR
ATTRTYPE: AT_STRING
ATTRVIZ: 5
ATTRDESC:: eod
An opaque user-defined string that can be set and queried. This
property has no effect on the operation of the DHCP server.
eod

ATTR: environment-dictionary
ATTRID: 13
ATTRHDRNAME: AO_CC_ENV_DICTIONARY
ATTRTYPE: AT_DICT(AT_STRING)
ATTRVIZ: 3

ATTR: selection-criteria
ATTRID: 14
ATTRHDRNAME: AO_CC_INCLUSION_CRITERIA
ATTRTYPE: AT_ARRAY(AT_STRING)
ATTRVIZ: 5
ATTRDESC:: eod
All of the criteria in this list must appear in the scope
selection tags for a scope to be considered acceptable to
this client class.
eod

ATTR: selection-criteria-excluded
ATTRID: 15
ATTRHDRNAME: AO_CC_EXCLUSION_CRITERIA
ATTRTYPE: AT_ARRAY(AT_STRING)
ATTRVIZ: 5
ATTRDESC:: eod
None of the criteria in this list may appear in a scope's
selection tags for that scope to be considered acceptable
for this client class.
eod

ATTR: version
ATTRID: 16
ATTRHDRNAME: AO_CC_VERSION
ATTRTYPE: AT_INT
ATTRVIZ: 1

ATTR: status
ATTRID: 17
ATTRHDRNAME: AO_CC_STATUS
ATTRTYPE: AT_ENUMINT(success=0, no-results=1, ldap-failure=2)
ATTRVIZ: 1

ATTR: embedded-policy
ATTRID: 18
ATTRHDRNAME: AO_CC_EMBEDDED_POLICY
ATTRTYPE: AT_OBJ(Policy)
ATTRVAL: 1102
ATTRVIZ: 5
ATTRDESC:: eod
The embedded policy object for this client-class.
eod

ATTR: over-limit-client-class-name
ATTRID: 19
ATTRHDRNAME: AO_CC_OVER_LIMIT_CLIENT_CLASS_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: over-limit-client-class-name
ATTRVIZ: 5
ATTRDESC:: eod
The name of the client-class to use if this client is over the limit
allowed for the limitation-id.
eod

ATTR: limitation-id
ATTRID: 20
ATTRHDRNAME: AO_CC_LIMITATION_ID
ATTRTYPE: AT_EXPR
ATTRMCDPATH: limitation-id
ATTRVIZ: 5
ATTRDESC:: eod
An expression which evaluates to a blob (or a string which can be
used as a blob). The resulting value relates together leases for
which there exists a maximum limit on the number of simultaneous
active leases allowed. The limit is configured in a policy, using
the 'limitation-count' property. See also 'over-limit-client-class'.
eod

ATTR: client-lookup-id
ATTRID: 21
ATTRHDRNAME: AO_CC_CLIENT_LOOKUP_ID
ATTRTYPE: AT_EXPR
ATTRMCDPATH: client-lookup-id
ATTRVIZ: 5
ATTRDESC:: eod
An expression which evaluates to a string (or a blob which is
a valid string).  The resulting value specifies the key value 
to be used to lookup the client in the client database, either
locally or through LDAP.
eod

ATTR: reservation-id
ATTRID: 22
ATTRHDRNAME: AO_CC_RESERVATION_ID
ATTRTYPE: AT_EXPR
ATTRMCDPATH: reservation-id
ATTRVIZ: 1
ATTRDESC:: eod
An expression which evaluates to a string (or a blob which is a valid
string).  The resulting value specifies the key to be used to lookup
any reservations that have been made for this client.

This might have been in CNR 6.0, but while reservations which didn't
require mac addresses as the key was a nice idea, there wasn't time to
implement it for 6.0.  If we ever do it, this is the place to put it.
Some of the code is in the server for it, though not all by any means.

eod

ATTR: max-client-lookups
ATTRID: 23
ATTRHDRNAME: AO_CC_MAX_CLIENT_LOOKUPS
ATTRTYPE: AT_INT
ATTRMCDPATH: max-client-lookups
ATTRVIZ: 1
ATTRDESC:: eod
An integer which specifies the maximum number of client database
lookups allowed.  Should be a small number (e.g., 2 or so).  The
default value, if none is specified in either the client or
client-class is 1.
eod

ATTR: default-namespace
ATTRID: 24
ATTRTYPE: AT_NAMEREF(VPN)
ATTRVAL: 1127
ATTRVIZ: 5
ATTRDESC:: eod
The namespace to put this client in if it does not supply a VPN-ID
(or vrf-name) value.
eod

ATTR: override-namespace
ATTRID: 25
ATTRTYPE: AT_NAMEREF(VPN)
ATTRVAL: 1127
ATTRVIZ: 5
ATTRDESC:: eod
The namespace to put this client, no matter what it provides
for a VPN-ID (or vrf-name) value.
eod

########################################
# end ClientClass
########################################

CLASS: DHCPRelatedServer
CLASSID: 1118
CLASSVIZ: 3
CLASSDESC:: eod
The information about a server related to a specific DHCP server,
probably as part of a failover pair.
eod

ATTR: ipaddr
ATTRID: 1
ATTRTYPE: AT_IPADDR

ATTR: type
ATTRID: 2 
ATTRTYPE: AT_ENUMINT(none=0, main=1, backup=2, dns=3, ldap=4)

ATTR: comm-state
ATTRID: 3
ATTRTYPE: AT_ENUMINT(none=0, ok=1, interrupted=2)

ATTR: requests
ATTRID: 4
ATTRTYPE: AT_INT

ATTR: failover-state
ATTRID: 5
ATTRTYPE: AT_ENUMINT(none=0, startup=1, normal=2, communications-interrupted=3, partner-down=4, potential-conflict=5, recover=6, paused=7, shutdown=8, recover-done=9)


ATTR: partner-failover-state
ATTRID: 6
ATTRTYPE: AT_ENUMINT(none=0, startup=1, normal=2, communications-interrupted=3, partner-down=4, potential-conflict=5, recover=6, paused=7, shutdown=8, recover-done=9)

########################################
# xxxRelatedServer
#
# There are several (as of this writing, 3) different
# but related objects, all named x...xRelatedServer.  Since
# there is no sub-classing, we can't formally have common and
# then sub-class specific attributes, but we can do something
# similar with a little care in the attribute definitions.
#
# Attribute ID's less than 20 (decimal) amongst these objects
# are common attributes, and those with attribute ID's of 20
# or greater are object specific attributes.
#
# At present, there are three related objects:
#
# LDAPRelatedServer
# DNSRelatedServer
# FailoverRelatedServer
########################################


########################################
# LDAPRelatedServer
########################################

CLASS: LDAPRelatedServer
CLASSID: 1139
CLASSVIZ: 3
CLASSDESC:: eod
The information about an LDAP server related to a specific DHCP server.
eod

ATTR: ipaddr
ATTRID: 1
ATTRTYPE: AT_IPADDR

ATTR: comm-state
ATTRID: 2 
ATTRFLAGS: AF_PRINT_ALT
ATTRTYPE: AT_ENUMINT(none=0, ok=1, interrupted=2)

# leave some attribute space for common parameters of all RelatedServers
# see comment titled xxxRelatedServer, above

ATTR: requests
ATTRID: 20
ATTRTYPE: AT_INT

########################################
# DNSRelatedServer
########################################

CLASS: DNSRelatedServer
CLASSID: 1140
CLASSVIZ: 3
CLASSDESC:: eod
The information about a DNS server related to a specific DHCP server.
eod

ATTR: ipaddr
ATTRID: 1
ATTRTYPE: AT_IPADDR

ATTR: comm-state
ATTRID: 2 
ATTRFLAGS: AF_PRINT_ALT
ATTRTYPE: AT_ENUMINT(none=0, ok=1, interrupted=2)

# leave some attribute space for common parameters of all RelatedServers
# see comment titled xxxRelatedServer, above

ATTR: requests
ATTRID: 20
ATTRTYPE: AT_INT

########################################
# FailoverRelatedServer
########################################

CLASS: FailoverRelatedServer
CLASSID: 1138
CLASSVIZ: 3
CLASSDESC:: eod
The information about a Failover partner server related to a 
specific DHCP server.
eod

ATTR: ipaddr
ATTRID: 1
ATTRTYPE: AT_IPADDR
ATTRDESC:: eod
The IP address of the partner server.
eod

ATTR: comm-state
ATTRID: 2 
ATTRFLAGS: AF_PRINT_ALT
ATTRTYPE: AT_ENUMINT(none=0, ok=1, interrupted=2)

# leave some attribute space for common parameters of all RelatedServers
# see comment titled xxxRelatedServer, above

ATTR: current-time
ATTRID: 20
ATTRTYPE: AT_DATE
ATTRDESC:: eod
The current time on the server returning this object.
eod

ATTR: maximum-client-lead-time
ATTRID: 21
ATTRTYPE: AT_INT
ATTRDESC:: eod
The current maximum client lead time on this system.
eod

ATTR: our-ipaddr
ATTRID: 22
ATTRTYPE: AT_IPADDR
ATTRDESC:: eod
The IP address of our interface to this partner server.
eod

ATTR: role
ATTRID: 23
ATTRTYPE: AT_ENUMINT(none=0, main=1, backup=2)
ATTRFLAGS: AF_PRINT_ALT
ATTRDESC:: eod
The failover role of the server returning this object.
eod

ATTR: partner-role
ATTRID: 24
ATTRTYPE: AT_ENUMINT(none=0, main=1, backup=2)
ATTRFLAGS: AF_PRINT_ALT
ATTRDESC:: eod
The failover role of the partner of the server returning this object.
eod

ATTR: state
ATTRID: 25
ATTRTYPE: AT_ENUMINT(none=0, startup=1, normal=2, communications-interrupted=3, partner-down=4, potential-conflict=5, recover=6, paused=7, shutdown=8, recover-done=9)
ATTRFLAGS: AF_PRINT_ALT
ATTRDESC:: eod
The state which this end of the failover relationship is in.
eod

ATTR: partner-state
ATTRID: 26
ATTRTYPE: AT_ENUMINT(none=0, startup=1, normal=2, communications-interrupted=3, partner-down=4, potential-conflict=5, recover=6, paused=7, shutdown=8, recover-done=9)
ATTRFLAGS: AF_PRINT_ALT
ATTRDESC:: eod
The last known state which the partner's end of the failover relationship is in.
eod

ATTR: start-time-of-state 
ATTRID: 27
ATTRTYPE: AT_DATE
ATTRDESC:: eod
The time at which the current failover state began.
eod

ATTR: start-time-of-partner-state 
ATTRID: 28
ATTRTYPE: AT_DATE
ATTRDESC:: eod
The time at which the partner's current failover state began.
eod

ATTR: start-of-comm-interrupted
ATTRID: 29
ATTRTYPE: AT_DATE
ATTRDESC:: eod
The time at which this partner most recent went into communications interrupted
state.  This is valid across reloads, while the start-time-of-state will never
have a time earlier than the most recent server reload.
eod

ATTR: last-comm-ok-time
ATTRID: 30
ATTRTYPE: AT_DATE
ATTRDESC:: eod
The time at which this server last found communications to be ok.
eod

ATTR: sequence-number
ATTRID: 31
ATTRTYPE: AT_VERSION
ATTRDESC:: eod
Sequence number unique across failover objects, if different 
from sequence in lease, lease is considered "not up to date" 
independent of the sf-up-to-date lease flag.
eod

ATTR: est-end-recover-time
ATTRID: 32
ATTRTYPE: AT_DATE
ATTRDESC:: eod
Valid if update-request-in-progress != none. If it appears, 
time at which server will enter recover done if the update 
request outstanding is complete then.  If it doesn't appear, 
then server will enter recover-done state whenever update-request 
is completed.
eod

ATTR: est-partner-end-recover-time
ATTRID: 33
ATTRTYPE: AT_DATE
ATTRDESC:: eod
Only appears if the partner-failover-state is recover.  This is
a prediction of when the partner will time out its MCLT and 
finish being in the recover state.  It is only an estimate.
eod

ATTR: safe-period-remaining
ATTRID: 34
ATTRTYPE: AT_TIME
ATTRDESC:: eod
Duration in seconds remaining in safe-period.  
If this is != 0, then this server is currently running down a 
safe period with respect to its partner.
eod

ATTR: use-other-available
ATTRID: 35
ATTRTYPE: AT_BOOL
ATTRDESC:: eod
If false or unset, then other-available
leases cannot be used by this server.  If true, then other-available leases
can be used by this server.  Valid at all times, but should only be true if
state is PARTNER-DOWN.
eod

ATTR: use-other-available-time
ATTRID: 36
ATTRTYPE: AT_DATE
ATTRDESC:: eod
Appears if current state is PARTNER-DOWN and use-other-available is not
true. Contains the time when use-other-available will go to true.
eod

ATTR: update-response-in-progress
ATTRID: 37
ATTRTYPE: AT_STRING
ATTRDESC:: eod
Only appears if this server is processing an update response. 
This string gives information about the type of and origin of the response.
eod

ATTR: update-response-percent-complete
ATTRID: 38
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number between 0 and 100.  Only valid if update-response-outstanding appears.  
If this appears, it is  the percent complete of the current update response.
eod

ATTR: update-response-start-time
ATTRID: 39
ATTRTYPE: AT_DATE
ATTRDESC:: eod
The time that the update response mentioned in update-response-in-progress
was started.
eod

ATTR: update-response-done-time
ATTRID: 40
ATTRTYPE: AT_DATE
ATTRDESC:: eod
The time that the most recent update response sent an update done to
the partner server.
eod

ATTR: update-request-outstanding
ATTRID: 41
ATTRFLAGS: AF_PRINT_ALT
ATTRTYPE: AT_ENUMINT(none=0, update=1, update-all=2)
ATTRDESC:: eod
If unset or zero, then the server does not have an update request queued
for its partner.  If != 0, then it does have an update request queued for
its failover partner.
eod

ATTR: update-request-start-time
ATTRID: 42
ATTRTYPE: AT_DATE
ATTRDESC:: eod
The time at which the update-request-outstanding update request (if any)
was started.
eod

ATTR: update-request-done-time
ATTRID: 43
ATTRTYPE: AT_DATE
ATTRDESC:: eod
The time at which the last update request (if any)
completed.  
eod

########################################
# End of xxxRelatedServer definitions.  If you add
# another one, be sure you read the comment above titled
# xxxRelatedServer, and update the list of related server
# object names there.
########################################


#
# dhcp option data-type class: used to describe vendor-specific
# option data
#

CLASS: OptionDataType-Field
CLASSROOT: OPTIONDATATYPE_FIELD
CLASSID: 1120
CLASSVIZ: 5
CLASSNAME: 1

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_OPTIONDATATYPE_FIELD_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRVIZ: 5

ATTR: number
ATTRID: 2
ATTRHDRNAME: AO_OPTIONDATATYPE_FIELD_NUMBER
ATTRTYPE: AT_INT
ATTRMCDPATH: number
ATTRVIZ: 5

ATTR: length
ATTRID: 3
ATTRHDRNAME: AO_OPTIONDATATYPE_FIELD_LENGTH
ATTRTYPE: AT_INT
ATTRMCDPATH: length
ATTRVIZ: 5

ATTR: type
ATTRID: 4
ATTRHDRNAME: AO_OPTIONDATATYPE_FIELD_TYPE
# note: type currently omits OVERLOAD, OT_MESSAGE, OT_REQUEST, OT_NODE, OT_IPADD
RPAIR, OT_IPNET
# note: this MUST be kept in sync with the option_type enum in optiondesc.h !!!
ATTRTYPE: AT_ENUMINT(PAD=0, BOOL, INT, INT_ARRAY, STRING, IPADDR, IPADDR_ARRAY, BYTE, BYTE_ARRAY, WORD, WORD_ARRAY, UINT, UINT_ARRAY)
ATTRMCDPATH: type
ATTRVIZ: 5
ATTRFLAGS: AF_PRINT_ALT

ATTR: flags
ATTRID: 5
ATTRHDRNAME: AO_OPTIONDATATYPE_FIELD_FLAGS
ATTRTYPE: AT_FLAGSINT( little-endian=1, exclude-from-dhcp-packet=2, counted-array=3 )
ATTRMCDPATH: flags
ATTRVIZ: 5

# Class "OptionType" definition starts here
#
# nrmcd> option-datatype <name> { create | delete | list }
# nrmcd> option-datatype <name> enable | disable } read-only
# nrcmd> option-datatype <name> definefield <field-name> <field-number> <DHCP option type> [<flags>]
# nrcmd> option-datatype <name> undefinefield <field-name>
# nrcmd> option-datatype <name> listfields
#

CLASS: OptionDataType
CLASSROOT: OPTIONDATATYPE
CLASSID: 1121
CLASSNAME: 1

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_OPTIONDATATYPE_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRVIZ: 5
ATTRDESC:: eod
The name of the option-datatype.
eod

ATTR: read-only
ATTRID: 3
ATTRHDRNAME: AO_OPTIONDATATYPE_READ_ONLY
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: read-only
ATTRVIZ: 5
ATTRDESC:: eod
If read-only is enabled, DHCP server will not allow changes to
option-datatype. When an option-datatype is create, read-only
is disabled by default.
eod

ATTR: fields
ATTRID: 2
ATTRHDRNAME: AO_OPTIONDATATYPE_FIELDS
ATTRTYPE: AT_NLIST(AT_OBJ(OptionDataType-Field))
# 1<<16 | 1120
ATTRVAL: 66656
ATTRMCDPATH: fields
ATTRVIZ: 3
ATTRDESC:: eod
The list of fields in the option-datatype.
eod

CLASS: VendorSubOption
CLASSROOT: VENDORSUBOPTION
CLASSID: 1122
CLASSVIZ: 3
CLASSNAME: 1

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_VENDORSUBOPTION_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRVIZ: 5

ATTR: suboption-number
ATTRID: 2
ATTRHDRNAME: AO_VENDORSUBOPTION_SUBOPTION_NUMBER
ATTRTYPE: AT_INT
ATTRMCDPATH: suboption-number
ATTRVIZ: 5

ATTR: option-datatype-name
ATTRID: 3
ATTRHDRNAME: AO_VENDORSUBOPTION_OPTIONDATATYPE_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: option-datatype-name
ATTRVIZ: 5

ATTR: flags
ATTRID: 4
ATTRHDRNAME: AO_VENDORSUBOPTION_FLAGS
ATTRTYPE: AT_FLAGSINT( array=1, no-suboption-opcode=2, no-suboption-len=3, no-suboption-data=4 )
ATTRMCDPATH: flags
ATTRVIZ: 5

CLASS: VendorOption
CLASSROOT: VENDOROPTION
CLASSID: 1123
CLASSNAME: 1

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_VENDOROPTION_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRVIZ: 5
ATTRDESC:: eod
The name of the vendor-option. The name cannot have a '-' (hyphen)
character in it.
eod

ATTR: vendor-class-id
ATTRID: 2
ATTRHDRNAME: AO_VENDOROPTION_VENDOR_CLASS_ID
ATTRTYPE: AT_STRING
ATTRMCDPATH: vendor-class-id
ATTRVIZ: 5
ATTRDESC:: eod
The vendor class identifier string provided by the DHCP client device
vendor.  DHCP server uses this string to identify the DHCP client
device and return appropriate vendor specific option data.
eod

# Not yet implemeneted. (dhcp-offer-reply, dhcp-offer-reply)

ATTR: dhcp-offer-reply
ATTRID: 3
ATTRHDRNAME: AO_VENDOROPTION_DHCP_OFFER_REPLY
ATTRTYPE: AT_LIST(AT_STRING)
ATTRMCDPATH: dhcp-offer-reply
ATTRVIZ: 3
ATTRDESC:: eod
The list of suboption names (in this vendor-option) that should always
be part of DHCPOFFER packet, sent to the DHCP client device.
eod

ATTR: dhcp-ack-reply
ATTRID: 4
ATTRHDRNAME: AO_VENDOROPTION_DHCP_ACK_REPLY
ATTRTYPE: AT_LIST(AT_STRING)
ATTRMCDPATH: dhcp-ack-reply
ATTRVIZ: 3
ATTRDESC:: eod
The list of suboption names (in this vendor-option) that should always
be part of DHCPACK packet, sent to the DHCP client device.
eod

ATTR: suboptions
ATTRID: 5
ATTRHDRNAME: AO_VENDOROPTION_SUBOPTIONS
ATTRTYPE: AT_NLIST(AT_OBJ(VendorSubOption))
# 1<<16 | 1122
ATTRVAL: 66658
ATTRMCDPATH: suboptions
ATTRVIZ: 3
ATTRDESC:: eod
The list of suboption within a vendor-option.
eod

ATTR: read-only
ATTRID: 6
ATTRHDRNAME: AO_VENDOROPTION_READ_ONLY
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
ATTRMCDPATH: read-only
ATTRVIZ: 5
ATTRDESC:: eod
If read-only is enabled, DHCP server will not allow changes to
vendor-option. When a new vendor-option is create, read-only is
disabled.
eod

ATTR: vendor-option-number
ATTRID: 7
ATTRHDRNAME: AO_VENDOROPTION_OPTION_NUMBER
ATTRTYPE: AT_RANGEINT(1-255)
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 43
ATTRMCDPATH: vendor-option-number
ATTRVIZ: 3
ATTRDESC:: eod
By default, vendor-option-number is set to 43 (RFC 2132). For 
non-standard DHCP client devices the option number must be 
assigned a value based on the device vendor specification.
eod

# VendorOptionData - object to hold the data for vendor-option
# (used in policy object).

CLASS: VendorOptionData
CLASSROOT: VENDOROPTIONDATA
CLASSID: 1124
CLASSVIZ: 3
CLASSNAME: 1

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_VENDOROPTIONDATA_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRVIZ: 5

ATTR: vendor-class-id
ATTRID: 2
ATTRHDRNAME: AO_VENDOROPTIONDATA_VENDOR_CLASS_ID
ATTRTYPE: AT_STRING
ATTRMCDPATH: vendor-class-id
ATTRVIZ: 5

ATTR: data
ATTRID: 3
ATTRHDRNAME: AO_VENDOROPTIONDATA_DATA
ATTRTYPE: AT_ARRAY(VendorSubOptionData)
ATTRMCDPATH: data
ATTRVIZ: 3

ATTR: wireformat-data
ATTRID: 4
ATTRHDRNAME: AO_VENDOROPTIONDATA_WIREFORMAT_DATA
ATTRTYPE: AT_BLOB
ATTRMCDPATH: wireformat-data
ATTRVIZ: 3

#
#VendorSubOptionData - object to hold the data for each Sub-option
#

CLASS: VendorSubOptionData
CLASSROOT: VENDORSUBOPTIONDATA
CLASSID: 1125
CLASSVIZ: 3
CLASSNAME: 1

ATTR: suboption-name
ATTRID: 1
ATTRHDRNAME: AO_VENDOROSUBPTIONDATA_SUBOPTION_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: suboption-name
ATTRVIZ: 5

ATTR: suboption-number
ATTRID: 2
ATTRHDRNAME: AO_VENDOROSUBPTIONDATA_SUBOPTION_NUMBER
ATTRTYPE: AT_INT
ATTRMCDPATH: suboption-number
ATTRVIZ: 5

ATTR: suboption-array-data
ATTRID: 3
ATTRHDRNAME: AO_VENDOROSUBPTIONDATA_SUBOPTION_ARRAY_DATA
ATTRTYPE: AT_ARRAY(AT_LISTREF(OptionDataTypeFieldData))
ATTRMCDPATH: suboption-array-data
ATTRVIZ: 3

# OptionDataTypeFieldData - hold data for a field within option-datatype

CLASS: OptionDataTypeFieldData
CLASSROOT: OPTIONDATATYPEFIELDDATA
CLASSID: 1126
CLASSVIZ: 3
CLASSNAME: 1

ATTR: field-name
ATTRID: 1
ATTRHDRNAME: AO_OPTIONDATATYPEFIELDDATA_FIELD_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRVIZ: 5

ATTR: suboption-name
ATTRID: 2
ATTRHDRNAME: AO_OPTIONDATATYPEFIELDDATA_SUBOPTION_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: suboption-name
ATTRVIZ: 5

ATTR: suboption-index
ATTRID: 3
ATTRHDRNAME: AO_OPTIONDATATYPEFIELDDATA_SUBOPTION_INDEX
ATTRTYPE: AT_INT
ATTRMCDPATH: suboption-index
ATTRVIZ: 5

ATTR: field-data
ATTRID: 4
ATTRHDRNAME: AO_OPTIONDATATYPEFIELDDATA_FIELD_DATA
ATTRTYPE: AT_BLOB
ATTRMCDPATH: field-data
ATTRVIZ: 5

#
# Namespace object for dhcp
#

CLASS: VPN
CLASSROOT: VPN
CLASSID: 1127
CLASSNAME: 1
CLASSKEY: 4
CLASSVIZ: 5
CLASSDESC:: eod
eod

ATTR: name
ATTRID: 1
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED, AF_UNIQUE
ATTRDESC:: eod
The VPN's name within the CNR management system. Independent from,
but could be the same as the vrf-name.
eod

ATTR: vpn-id
ATTRID: 2
ATTRHDRNAME: AO_VPN_VPNID
ATTRTYPE: AT_VPNID
ATTRDESC:: eod
The namespace's vpn-id in RFC 2685 format (i.e, 7 octets),
using a syntax similar to that used by IOS to enter the
same information.  The syntax is 3 hex octets, a colon,
and 4 hex octets.  For example 010203:04050607 would
be the way to enter the following hex octets:
01:02:03:04:05:06:07 into this property.
eod

ATTR: vrf-name
ATTRID: 3
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The VPN's VRF name.
eod

ATTR: id
ATTRID: 4
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED, AF_IMMUTABLE, AF_UNIQUE
ATTRDESC:: eod
The VPN's unique id.  This is a 32 bit value that is associated
with every VPN-qualified IP address, subnet or address block.
It is different than and unrelated to the standary 7-byte VPN-ID.
eod

ATTR: description
ATTRID: 5
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The namespace's description.
eod

ATTR: addr-blocks-use-lan-segments
ATTRID: 6
ATTRHDRNAME: AO_VPN_BLOCKS_USE_LANSEGMENTS
ATTRTYPE: AT_BOOL
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether DHCP subnet-allocation uses the
lan-segment attribute when configured on address-blocks.
eod

ATTR: addr-blocks-use-client-affinity
ATTRID: 7
ATTRHDRNAME: AO_VPN_BLOCKS_USE_AFFINITY
ATTRTYPE: AT_BOOL
ATTRVIZ: 5
ATTRDESC:: eod
The DHCP server attempts to allocate subnets to clients
using address-blocks that the clients have already used. This
parameter allows that behavior to be disabled, in which case the
server will supply subnets from any block that is suitable (based
on other selection data in the clients' messages.)
eod

ATTR: addr-blocks-use-selection-tags
ATTRID: 8
ATTRHDRNAME: AO_VPN_BLOCKS_USE_TAGS
ATTRTYPE: AT_BOOL
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether the server compares incoming subnet-allocation
requests' subnet name data with each address-block's selection
tags. A block will only be considered if the two match.
eod

ATTR: addr-blocks-default-selection-tags
ATTRID: 9
ATTRHDRNAME: AO_VPN_BLOCKS_DEFAULT_TAGS
ATTRTYPE: AT_ARRAY(AT_STRING)
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the default selection tag (or list of tags) that will
be associated with incoming subnet-allocation requests in this
namespace that do not contain any subnet name data.
eod

ATTR: cluster-id
ATTRID: 10
ATTRTYPE: AT_SHORT
ATTRVIZ: 3
ATTRFLAGS: AF_REFERENCE
# Encode attribute 11 of Cluster(1449) as 11<<16 + 1449 == 722345
ATTRVAL: 722345
ATTRDESC:: eod
The id of the (local) cluster that is the authoritative source
for this object.  This attribute is set as part of replica data
propagation.
eod

ATTR: replica-deleted
ATTRID: 11
ATTRTYPE: AT_BYTE
ATTRVIZ: 3
ATTRDESC:: eod
A marker that the replica propagation code thinks that this
object should be deleted.  This is used rather than removing
the cluster-id value so we can tell when an object has been
created by replica propagation and then should be deleted.
eod

#
# Address Block class (for dhcp)
#

CLASS: AddrBlock
CLASSROOT: ADDRBLOCK
CLASSID: 1128
CLASSNAME: 1
CLASSVIZ: 5
CLASSDESC:: eod
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_ADDRBLOCK_NAME
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The address-block's name.
eod

ATTR: address
ATTRID: 2
ATTRHDRNAME: AO_ADDRBLOCK_ADDRESS
ATTRTYPE: AT_SUBNET
ATTRFLAGS: AF_REQUIRED
ATTRDESC:: eod
The address-block's IP subnet address.
eod

ATTR: default-subnet-size
ATTRID: 3
ATTRHDRNAME: AO_ADDRBLOCK_DEFAULT_SUBNET
ATTRTYPE: AT_INT
ATTRDEFVAL: 28
ATTRDESC:: eod
The default subnet size for allocations from this address
block.
eod

ATTR: subnet-increment
ATTRID: 4
ATTRHDRNAME: AO_ADDRBLOCK_SUBNET_INCREMENT
ATTRTYPE: AT_INT
ATTRVIZ: 3
ATTRDESC:: eod
The default size of subsequent subnets to allocate from this address
block.
eod

ATTR: namespace-id
ATTRID: 5
ATTRHDRNAME: AO_ADDRBLOCK_NAMESPACE_ID
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REFERENCE
# Encode attribute 4 of Vpn(1127) as 4<<16 + 1127 == 263271
ATTRVAL: 263271
ATTRDESC:: eod
The id of the namespace which contains this address-block.
eod

ATTR: policy
ATTRID: 6
ATTRHDRNAME: AO_ADDRBLOCK_POLICY
ATTRTYPE: AT_NAMEREF(Policy)
ATTRVAL: 1102
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: default
ATTRDESC:: eod
The name of the policy associated with this address-block.
eod

ATTR: embedded-policy
ATTRID: 7
ATTRHDRNAME: AO_ADDRBLOCK_EMBEDDED_POLICY
ATTRTYPE: AT_OBJ(Policy)
ATTRDESC:: eod
The embedded policy object for this address-block.
eod

ATTR: segment-name
ATTRID: 8
ATTRHDRNAME: AO_ADDRBLOCK_SEGMENT_NAME
ATTRTYPE: AT_STRING
ATTRDESC:: eod
A label for the lan that this block is part of. To group
multiple logical ip subnets on a single physical lan, give
each block the same segment-name string. The server ignores
character case when comparing segment-name strings.
eod

ATTR: selection-tags
ATTRID: 9
ATTRHDRNAME: AO_ADDRBLOCK_SELECTION_TAGS
ATTRTYPE: AT_STRING
ATTRDESC:: eod
A list of tag strings which will be compared with incoming
allocation requests' selection tags. All of a request's
tags must match a block's selection tags in order for the block
to be used to satisfy the request. Separate multiple tags with
a comma. Do not include commas within a tag.
eod

ATTR: deprecated
ATTRID: 10
ATTRHDRNAME: AO_ADDRBLOCK_DEPRECATED
ATTRTYPE: AT_BOOL
ATTRDEFVAL: false
ATTRDESC:: eod
The server will not use a deprecated address-block for new
subnet allocations. It will allow existing clients to renew
their subnets, but it will indicate to them that the subnet
has been deprecated. That indication should cause the client
to prepare to release the deprecated subnet(s) back to
the server.
eod

#
# subnet class, for dhcp
#

CLASS: Subnet
CLASSROOT: SUBNET
CLASSID: 1129
CLASSNAME: 1
CLASSVIZ: 5
CLASSDESC:: eod
eod

ATTR: address
ATTRID: 1
ATTRHDRNAME: AO_SUBNET_ADDRESS
ATTRTYPE: AT_SUBNET
ATTRFLAGS: AF_IMMUTABLE
ATTRDESC:: eod
The subnet's subnet address (including the mask).
eod

ATTR: in-use-addresses
ATTRID: 2
ATTRHDRNAME: AO_SUBNET_STAT_IN_USE
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of addresses currently being used by hosts.
eod

ATTR: unusable-addresses
ATTRID: 3
ATTRHDRNAME: AO_SUBNET_STAT_UNUSABLE
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of addresses marked unusable.
eod

ATTR: high-water
ATTRID: 4
ATTRHDRNAME: AO_SUBNET_STAT_HIGH_WATER
ATTRTYPE: AT_INT
ATTRDESC:: eod
The highest utilization level recorded since the last time
that statistics were retrieved.
eod

ATTR: namespace-id
ATTRID: 5
ATTRHDRNAME: AO_SUBNET_NAMESPACE_ID
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REFERENCE
# Encode attribute 4 of Vpn(1127) as 4<<16 + 1127 == 263271
ATTRVAL: 263271
ATTRDESC:: eod
The id of the namespace that contains this subnet
eod

ATTR: state
ATTRID: 6
ATTRHDRNAME: AO_SUBNET_CURRENT_STATE
ATTRTYPE: AT_ENUMINT(none=0, available=1, other-available=2, offered=3, leased=4, expired=5, released=6, unavailable=7, pending-available=8)
ATTRFLAGS: AF_PRINT_ALT
ATTRDESC:: eod
The subnet's state.
eod

ATTR: previous-state
ATTRID: 7
ATTRHDRNAME: AO_SUBNET_PREV_STATE
ATTRTYPE: AT_ENUMINT(none=0, available=1, other-available=2, offered=3, leased=4, expired=5, released=6, unavailable=7, pending-available=8)
ATTRFLAGS: AF_PRINT_ALT
ATTRVIZ: 3
ATTRDESC:: eod
The previous state, useful for history logging.
eod

ATTR: expiration
ATTRID: 8
ATTRHDRNAME: AO_SUBNET_EXPIRATION
ATTRTYPE: AT_DATE
ATTRVIZ: 5
ATTRDESC:: eod
The expiration time of the subnet's binding.
eod

ATTR: last-transaction-time
ATTRID: 9
ATTRHDRNAME: AO_SUBNET_LAST_TRANS_TIME
ATTRTYPE: AT_DATE
ATTRVIZ: 5
ATTRDESC:: eod
The time at which the client last communicated with the server
about this subnet.
eod

ATTR: client-id
ATTRID: 10
ATTRHDRNAME: AO_SUBNET_CLIENT_ID
ATTRTYPE: AT_BLOB
ATTRDESC:: eod
The client-id of the subnet's client.
eod

ATTR: client-flags
ATTRID: 11
ATTRHDRNAME: AO_SUBNET_CLIENT_FLAGS
ATTRTYPE: AT_FLAGSINT(client-valid=1, client-id-created-from-mac-address=2)
ATTRDESC:: eod
A variety of flags relating to the subnet's client:

  client-id-created-from-mac-address

    Indicates that the client-id was created for internal
    use from the client's MAC address.

eod


ATTR: client-mac-addr
ATTRID: 12
ATTRHDRNAME: AO_SUBNET_CLIENT_MAC_ADDR
ATTRTYPE: AT_MACADDR
ATTRMCDPATH: client-mac-addr
ATTRVIZ: 5
ATTRDESC:: eod
The MAC address which the client presented to the DHCP server.
eod

ATTR: client-domain-name
ATTRID: 13
ATTRHDRNAME: AO_SUBNET_CLIENT_DOMAIN_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: client-domain-name
ATTRVIZ: 5
ATTRDESC:: eod
The domain name the client specified in its messages (if any).
eod

ATTR: client-host-name
ATTRID: 14
ATTRHDRNAME: AO_SUBNET_CLIENT_HOST_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: client-host-name
ATTRVIZ: 5
ATTRDESC:: eod
The host name that the client specified (if any).
eod

ATTR: client-last-transaction-time
ATTRID: 15
ATTRHDRNAME: AO_SUBNET_CLIENT_LAST_TRANS_TIME
ATTRTYPE: AT_DATE
ATTRMCDPATH: client-last-trans-time
ATTRVIZ: 5
ATTRDESC:: eod
The time at which the client most recently contacted the
DHCP server.
eod

ATTR: client-class-name
ATTRID: 16
ATTRHDRNAME: AO_SUBNET_CLIENT_CLASS_NAME
ATTRTYPE: AT_STRING
ATTRVIZ: 3
ATTRDESC:: eod
eod

ATTR: version
ATTRID: 17
ATTRHDRNAME: AO_SUBNET_VERSION
ATTRTYPE: AT_VERSION
ATTRMCDPATH: version
ATTRVIZ: 3
ATTRDESC:: eod
The (internal) version of the subnet data blob.
eod

ATTR: relay-agent-option
ATTRID: 18
ATTRHDRNAME: AO_SUBNET_CLIENT_RELAY_AGENT_OPTION
ATTRTYPE: AT_BLOB
ATTRVIZ: 5
ATTRDESC:: eod
The contents of the relay agent information option from the
most recent client interaction.
eod

ATTR: selection-tags
ATTRID: 19
ATTRHDRNAME: AO_SUBNET_CLIENT_SELECTION_TAGS
ATTRTYPE: AT_STRING
ATTRVIZ: 5
ATTRDESC:: eod
The selection-tag string that the client presented when
it last leased or renewed the subnet binding.
eod

# end of Subnet class

CLASS: Range
CLASSROOT: RANGE
CLASSID: 1130

# save ATTR: 1 for compatability w/ CCMIPRange

ATTR: start
ATTRID: 2
ATTRTYPE: AT_IPADDR
ATTRDESC:: eod
The first address in this range.
eod

ATTR: end
ATTRID: 3
ATTRTYPE: AT_IPADDR
ATTRDESC:: eod
The last address in this range.
eod

CLASS: Option
CLASSROOT: NEWOPTION
CLASSID: 1131

ATTR: number
ATTRID: 1
ATTRTYPE: AT_INT
ATTRDESC:: eod
The option number (the T part of the TLV)
eod

ATTR: value
ATTRID: 2
ATTRTYPE: AT_BLOB
ATTRDESC:: eod
The option value (the V part of the TLV)
eod

ATTR: sub-options
ATTRID: 3
ATTRTYPE: AT_NLIST(AT_OBJ(Option))
# 1<<16 | 1131
ATTRVAL: 66667
ATTRDESC:: eod
This attribute provides for the optional subdivision of 
option data into nested sub-option objects.  This is
not used for storing DHCP server configuration, but may be
useful in other uses of TLV based values.
eod

ATTR: option-desc
ATTRID: 4
# ATTRTYPE: AT_OID
ATTRTYPE: AT_OBJREF(OptionDesc)
ATTRVAL: 1303
ATTRDESC:: eod
The option description that provides the type and name 
for this specific option.  This is a shortcut for a
lookup by id in the appropriate TLV desc table.
eod

#
# Network class
#

CLASS: Network
CLASSID: 1132
CLASSKEY: 2
CLASSDESC:: eod
A network represents a group of IP subnets that are
in the same broadcast domain.  A common example
of the need for a network is when a router interface
has secondary subnets and the DHCP server needs to
be told that these diverse subnets are topologically
related to the primary subnet on the router interface.

This concept has also been known as lan-segment.
eod

ATTR: name
ATTRID: 1
ATTRFLAGS: AF_REQUIRED
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The name of this network.
eod

ATTR: subnet
ATTRID: 2
ATTRFLAGS: AF_REQUIRED, AF_IMMUTABLE, AF_UNIQUE
ATTRTYPE: AT_SUBNET
ATTRDESC:: eod
The subnet that uniquely defines this network.  This
is usually the primary subnet on a router interface
or the subnet of the primary scope in a group of
primary/secondary scopes.
eod

ATTR: vpn
ATTRID: 3
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REFERENCE
# Encode attribute 4 of Vpn(1127) as 4<<16 + 1127 == 263271
ATTRVAL: 263271
ATTRDESC:: eod
The VPN that contains the subnet for this network.
eod

CLASS: FailoverPair
CLASSROOT: FOPAIR
CLASSID: 1133
CLASSNAME: 12
CLASSDESC:: eod
The FailoverPair object represents a failover pair relationship
from the perspective of a specific DHCP server.  The related
CCMFailoverPair object represents failover relationships
from a perspective that is independent of either DHCP server.
eod

ATTR: name
ATTRID: 1
ATTRFLAGS: AF_REQUIRED
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The name of this failover pair.
eod


# We are using AT_IPADDR rather than the more general AT_STRING because
# we want to eliminate the ambiguity introduced by supporting DNS names,
# and because it more closely matches the actual server behavior.

ATTR: main-server
ATTRID: 2
ATTRFLAGS: AF_REQUIRED
ATTRTYPE: AT_IPADDR
ATTRDESC:: eod
The primary IP address for the main server.  The distinguished value
0.0.0.0 refers to the local DHCP server.  In general, because the
failover protocol uses explicit IP addresses and because the main and
backup server have to agree on what IP addresses are used to define a
failover pair, it is better to provide an explicit IP address rather
than having the server pick one of possibly many interfaces.
eod

ATTR: backup-server
ATTRID: 3
ATTRFLAGS: AF_REQUIRED
ATTRTYPE: AT_IPADDR
ATTRDESC:: eod
The primary IP address for the backup server.  The distinguished value
0.0.0.0 refers to the local DHCP server.  In general, because the
failover protocol uses explicit IP addresses and because the main and
backup server have to agree on what IP addresses are used to define a
failover pair, it is better to provide an explicit IP address rather
than having the server pick one of possibly many interfaces.
eod

ATTR: backup-percentage
ATTRID: 4
ATTRTYPE: AT_INT
ATTRDEFVAL: 10
ATTRVIZ: 5
ATTRDESC:: eod
Not used. Backup percentage is specified from the DHCP Server 
configuration or from the per-scope failover configuration settings.
eod

ATTR: remote-username
ATTRID: 5
ATTRTYPE: AT_STRING
ATTRVIZ: 5
ATTRDESC:: eod
The username used to connect to the target failover server in order 
to update the remote server configuration.
eod

ATTR: remote-password
ATTRID: 6
ATTRTYPE: AT_CLEARTEXT
ATTRVAL: 17
ATTRVIZ: 5
ATTRDESC:: eod
The password associated with the remote username used to connect to 
the target failover server.
eod

ATTR: remote-scp-port
ATTRID: 7
ATTRTYPE: AT_INT
ATTRVIZ: 5
ATTRDESC:: eod
The SCP port number to use in communicating with the target failover 
server. This port number is set during installation. The default 
suggested by the installer is 1234.
eod

ATTR: server-default
ATTRID: 8
ATTRTYPE: AT_BOOL
ATTRDEFVAL: true
ATTRVIZ: 5
ATTRDESC:: eod
Is this failover pair the default one for the DHCP server, 
or is it scope-specific.
eod

ATTR: last-sync-time
ATTRID: 9
ATTRTYPE: AT_DATE
ATTRDEFVAL: 0
ATTRVIZ: 3
ATTRDESC:: eod
When was the list time that we performed configuration
synchronization with the remote server.
eod

ATTR: last-sync-main-dbsn
ATTRID: 10
ATTRTYPE: AT_INT
ATTRDEFVAL: 0
ATTRVIZ: 3
ATTRDESC:: eod
What was the DBSN for the main server's MCD datastore when
we last synchronized the configuration information.
eod

ATTR: last-sync-backup-dbsn
ATTRID: 11
ATTRTYPE: AT_INT
ATTRDEFVAL: 0
ATTRVIZ: 3
ATTRDESC:: eod
What was the DBSN for the backup server's MCD datastore when
we last synchronized the configuration information.
eod

ATTR: id
ATTRID: 12
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED, AF_UNIQUE, AF_IMMUTABLE
ATTRVIZ: 1
ATTRDESC:: eod
The actual MCD 'name' of the object so that its real name 
can be editable.
eod

ATTR: main-server-username
ATTRID: 13
ATTRTYPE: AT_STRING
ATTRVIZ: 3
ATTRDESC:: eod
The admin id for performing edits on the main server
(or is it the remote server?)
eod

ATTR: main-server-password
ATTRID: 14
ATTRTYPE: AT_CLEARTEXT
ATTRVIZ: 3
ATTRVAL: 18
ATTRDESC:: eod
The clear text password for authenticating the admin id.
eod

ATTR: main-server-scp-port
ATTRID: 15
ATTRTYPE: AT_INT
ATTRVIZ: 3
ATTRDESC:: eod
The SCP port to use when communicating with the 
remote server for synchronizing configuration.
eod

ATTR: refcount
ATTRID: 16
ATTRTYPE: AT_INT
ATTRVIZ: 5
ATTRDESC:: eod
The number of references to this FailoverPair.  The references
will come from either the DHCP Server configuration or from
the per-scope failover configuration settings.
eod

ATTR: remote-password-id
ATTRID: 17
ATTRTYPE: AT_SECRET
ATTRVAL: 6
ATTRDESC:: eod
The secret id for the secret containing the password for
the admin identity.  (Why do we have both remote-password-id
and main-server-password-id?  I think we should just have:
remote-admin, remote-password, remote-password-id).
eod

ATTR: main-server-password-id
ATTRID: 18
ATTRTYPE: AT_SECRET
ATTRVIZ: 3
ATTRVAL: 14
ATTRDESC:: eod
The secret id for the secret containing the password for
the admin identity.  (Why do we have both remote-password-id
and main-server-password-id?  I think we should just have:
remote-admin, remote-password, remote-password-id).
eod

ATTR: use-ssl
ATTRID: 19
ATTRTYPE: AT_ENUMSTR(disabled, optional, required)
ATTRDEFVAL: optional
ATTRDESC:: eod
The security mode that CCM should use when connecting to the remote
server to examine or change its configuration. If optional, and we
have a security library installed, we will try to secure the
connection. If required, we will not make the connection unless we
can secure the connection (this requires the security library to be
installed). If none, we will not try to secure the connection.
eod

CLASS: DHCPPacket
CLASSID: 1134
CLASSVIZ: 1
CLASSDESC:: eod
A genobj representation of a DHCP packet
eod

ATTR: op
ATTRID: 1
ATTRTYPE: AT_BYTE

ATTR: htype
ATTRID: 2
ATTRTYPE: AT_BYTE

ATTR: hlen
ATTRID: 3
ATTRTYPE: AT_BYTE

ATTR: hops
ATTRID: 4
ATTRTYPE: AT_BYTE

ATTR: xid
ATTRID: 5
ATTRTYPE: AT_INT

ATTR: secs
ATTRID: 6
ATTRTYPE: AT_SHORT

ATTR: flags
ATTRID: 7
ATTRTYPE: AT_SHORT

ATTR: ciaddr
ATTRID: 8
ATTRTYPE: AT_IPADDR

ATTR: yiaddr
ATTRID: 9
ATTRTYPE: AT_IPADDR

ATTR: siaddr
ATTRID: 10
ATTRTYPE: AT_IPADDR

ATTR: giaddr
ATTRID: 11
ATTRTYPE: AT_IPADDR

ATTR: chaddr
ATTRID: 12
ATTRTYPE: AT_BLOB

ATTR: sname
ATTRID: 13
ATTRTYPE: AT_STRING

ATTR: file
ATTRID: 14
ATTRTYPE: AT_STRING

# Leave attributes 15 - 17 or so as place-holders for the pseudo
# attribute numbers defined in the DHCP expression specification
# EDCS-188584

ATTR: option-list
ATTRID: 101
ATTRTYPE: AT_NLIST(AT_OBJ(Option))
# 1<<16 | 1131
ATTRVAL: 66667
ATTRDESC:: eod
The DHCP options for this packet as a list of option objects.
eod

#
# end class DhcpPacket
#

#
# DhcpServerStats class: includes server-wide stats
#

CLASS: DHCPServerStats
CLASSID: 1135
CLASSDESC:: eod
A genobj version of the global stats available from the DHCP server. 
eod

ATTR: start-time-str
ATTRID: 2
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The 'ctime' string form of the time at which the DHCP server was last
reloaded.
eod

ATTR: total-discovers
ATTRID: 3
ATTRTYPE: AT_INT
ATTRDESC:: eod
The total number of discovers that the DHCP server has received.
eod

ATTR: total-requests
ATTRID: 4
ATTRTYPE: AT_INT
ATTRDESC:: eod
The total number of requests that the DHCP server has received.
eod

ATTR: total-releases
ATTRID: 5
ATTRTYPE: AT_INT
ATTRDESC:: eod
The total number of releases that the DHCP server has received.
eod

ATTR: total-offers
ATTRID: 6
ATTRTYPE: AT_INT
ATTRDESC:: eod
The total number of offers that the DHCP server has sent.
eod

ATTR: total-acks
ATTRID: 7
ATTRTYPE: AT_INT
ATTRDESC:: eod
The total number of acks that the DHCP server has sent.
eod

ATTR: total-naks
ATTRID: 8
ATTRTYPE: AT_INT
ATTRDESC:: eod
The total number of naks that the DHCP server has sent.
eod

ATTR: total-declines
ATTRID: 9
ATTRTYPE: AT_INT
ATTRDESC:: eod
The total number of declines that the DHCP server has received.
eod

ATTR: start-time
ATTRID: 10
ATTRTYPE: AT_DATE
ATTRDESC:: eod
The time the server was last reloaded.
eod

#
# This class is used to pass lease history detail data from
# ccm to its clients.
#

CLASS: LeaseHistDetail
CLASSID: 1136
CLASSDESC:: eod
A class that holds a single detailed change to a lease binding. 
eod

ATTR: vpn
ATTRID: 1
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REFERENCE
# Encode attribute 4 of Vpn class (1127) as 4<<16 + 1127 == 263271
ATTRVAL: 263271
ATTRDESC:: eod
The lease's vpn id.
eod

ATTR: address
ATTRID: 2
ATTRTYPE: AT_IPADDR
ATTRDESC:: eod
The lease's address.
eod

ATTR: start-time
ATTRID: 3
ATTRTYPE: AT_DATE
ATTRDESC:: eod
The lease's start-time.
eod

ATTR: change-time
ATTRID: 4
ATTRTYPE: AT_DATE
ATTRDESC:: eod
The timestamp of the change.
eod

ATTR: change-entry
ATTRID: 5
ATTRTYPE: AT_OBJ(ChangeEntry)
ATTRDESC:: eod
A changeentry containing the change to the lease data.
eod

# end LeaseHistDetail class

#
# This class is used to pass current utilization detail data from
# dhcp to ccm and from ccm to clients. There is no parallel CCM object
# defined in ccm_datadict.
#

CLASS: CurrentUtilization
CLASSID: 1137
CLASSROOT: CURRENTUTIL
CLASSDESC:: eod
Detailed utilization information from a single dhcp scope, or
an entire subnet or address block.
eod

ATTR: scope-name
ATTRID: 1
ATTRTYPE: AT_STRING
ATTRDESC:: eod
For scope level utilization data, the name of the scope for which 
this data applies.
eod

ATTR: subnet
ATTRID: 2
ATTRTYPE: AT_SUBNET
ATTRDESC:: eod
The subnet (network number and mask) for which this utilization 
data applies. 

Note, This attribute needs to be attrid 2 for sorting by subnet and vpn-id.
eod

ATTR: vpn-id
ATTRID: 3
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REFERENCE
# Encode attribute 4 of Vpn class (1127) as 4<<16 + 1127 == 263271
ATTRVAL: 263271
ATTRDESC:: eod
The VPN identifier of the subnet for which this utilization 
data applies.

Note, This attribute needs to be attrid 3 for sorting by subnet and vpn-id.
eod

ATTR: aggregation-level
ATTRID: 4 
ATTRTYPE: AT_ENUMINT(scope-level=1, subnet-level=2, addr-block-level=3, totals=4)
ATTRFLAGS: AF_PRINT_ALT
ATTRDESC:: eod
Indicates the granularity of this utilization data. The
scope-level is the most detailed data available from the DHCP
server. Aggregated counters are reported at the subnet-level 
and addr-block-level. These are the sum of scope-level 
data in a given subnet or address block.
eod

ATTR: oid
ATTRID: 5 
ATTRTYPE: AT_OID
ATTRVIZ: 3
ATTRDESC:: eod
The object reference of the Scope, CCMSubnet, or CCMAddrBlock
for which this utilization data applies. 
eod

ATTR: avail
ATTRID: 6
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of dynamic leases (leases that are not reserved)
in this scope, subnet or address block that are currently  
available to be issued to clients. 
eod

ATTR: offered
ATTRID: 7
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of dynamic leases (leases that are not reserved)
in this scope, subnet or address block that are currently 
offered to a client, but not yet acknowledged as leased. 
eod

ATTR: leased
ATTRID: 8
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of dynamic leases (leases that are not reserved) in this
scope, subnet or address block that are leased to DHCP clients.
eod

ATTR: expired
ATTRID: 9
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of dynamic leases (leases that are not reserved) in this 
scope, subnet or address block that are past their lease expiration 
time (or in release-grace-period for leases released by clients), but 
not yet available for other DHCP clients. An expired (or released) 
lease will become available after the policy grace-period (or 
release-grace-period) has elapsed.
eod

ATTR: unavail 
ATTRID: 10
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of dynamic leases (leases that are not reserved) in this 
scope, subnet or address block that are currently marked unavailable. 
A lease will be marked unavailable if it has been declined by the 
client or the server has detected an address conflict. Leases in 
this state indicate there are configuration errors in the network 
that need to be corrected.
eod

ATTR: pend-avail
ATTRID: 11
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of dynamic leases (leases that are not reserved) in this 
scope, subnet or address block that are in the pending-available 
state. Leases in this state are waiting for acknowledgement from 
the server's failover partner that it has not reissued the lease. 
Leases may remain in this state for an extended period if a failover 
pair is in communications-interrupted mode.
eod

ATTR: other-avail
ATTRID: 12
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of dynamic leases (leases that are not reserved) in this 
scope, subnet or address block that are available to be issued to 
clients by the server's failover partner. 
eod

ATTR: leased-deactivated
ATTRID: 13
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of dynamic leases (leases that are not reserved) in this 
scope, subnet or address block that are currently leased by DHCP 
clients, but have also been deactivated by an administrator.
eod

ATTR: reserved-inactive 
ATTRID: 14
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of reserved leases in this scope, subnet or address block 
that are at present not used by their assigned DHCP clients.
eod

ATTR: reserved-active 
ATTRID: 15
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of reserved leases in this scope, subnet or address block 
that are actively being used by their assigned DHCP clients.
eod

ATTR: reserved-leased-deactivated
ATTRID: 16
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of reserved leases in this scope, subnet or address block 
that are currently leased by their assigned DHCP clients, but have 
also been deactivated by an administrator.
eod

ATTR: reserved-unavail 
ATTRID: 17
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of reserved leases in this scope, subnet or address  
block that have been marked unavailable. A lease will be marked  
unavailable if it has been declined by the client or the server has   
detected an address conflict. Leases in this state indicate there  
are configuration errors in the network that need to be corrected.
eod

ATTR: total-dynamic
ATTRID: 18
ATTRTYPE: AT_INT
ATTRDESC:: eod
The total number of leases configured in this scope, subnet or 
address block, excluding reservations.
eod

ATTR: total-reserved
ATTRID: 19
ATTRTYPE: AT_INT
ATTRDESC:: eod
The total number of reserved leases configured in this scope, 
subnet or address block.
eod

ATTR: active-dynamic
ATTRID: 20
ATTRTYPE: AT_INT
ATTRDESC:: eod
The total number of dynamic leases in this scope, subnet or address 
block that are actively in use. A lease is defined as active if it
is in the leased, offered, released, expired, or pending-available
state.
eod

ATTR: free-dynamic
ATTRID: 21
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of dynamic leases in this scope, subnet or address 
block that are currently free to be offered to DHCP clients. 
A lease is defined as free if it is in the available or
other-available state.
eod

ATTR: deactivated
ATTRID: 22
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of leases in this scope, subnet or address block that 
have been deactivated by an administrator. This includes both 
regular leases and reservation leases that have been deactivated.
eod

# end utilization detail class

#
# CLASSID RANGE DNS classes 1200 - 1299
#

CLASS: DNSServer
CLASSROOT: DNSSERVER
CLASSID: 1200
CLASSNAME: 1
CLASSNAMEDESC:: eod
In Network Registrar, there is only one DNS server per cluster, and
DNS servers are not referenced by name.
eod
CLASSVIZ: 5
CLASSDESC:: eod
The DNS server configuration object.
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_DNSSERVER_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRVIZ: 3
ATTRDESC:: eod
The name of the DNS server.
eod

ATTR: zones
ATTRID: 2
ATTRHDRNAME: AO_DNSSERVER_ZONES
ATTRTYPE: AT_ARRAY(AT_NAMEREF(Zone))
ATTRMCDPATH: zones
ATTRVIZ: 0
ATTRVAL: 1201
ATTRDESC:: eod
There is no specific reference from a DNS server to
the zones that it is serving.
eod

ATTR: secondaryzones
ATTRID: 3
ATTRHDRNAME: AO_DNSSERVER_SECONDARYZONES
ATTRTYPE: AT_ARRAY(AT_NAMEREF(SecondaryZone))
ATTRMCDPATH: secondaryzones
ATTRVIZ: 0
ATTRVAL: 1210
ATTRDESC:: eod
There is no specific reference from a DNS server to
the secondary zones that it is serving.
eod

ATTR: local-port-num
ATTRID: 10
ATTRHDRNAME: AO_DNSSERVER_LOCALPORT
ATTRTYPE: AT_RANGEINT(1-65535)
ATTRMCDPATH: local_port_num
ATTRVIZ: 5
ATTRDEFVAL: 53
ATTRDESC:: eod
Specifies the UDP and TCP port number on which the DNS server
listens for queries.
Validation: [1, 65535]
eod

ATTR: remote-port-num
ATTRID: 11
ATTRHDRNAME: AO_DNSSERVER_REMOTEPORT
ATTRTYPE: AT_RANGEINT(1-65535)
ATTRMCDPATH: remote_port_num
ATTRVIZ: 5
ATTRDEFVAL: 53
ATTRDESC:: eod
Specifies the UDP and TCP port number to which the DNS server
sends queries to other servers.
Validation: [1, 65535]
eod

ATTR: rcv-bufsize
ATTRID: 12
ATTRHDRNAME: AO_DNSSERVER_RECVBUFSZ
ATTRTYPE: AT_RANGEINT(512-65535)
ATTRMCDPATH: rcv_bufsize
ATTRVIZ: 1
ATTRDEFVAL: 8192
ATTRDESC:: eod
Size of UDP socket send and receive buffer sizes in kernel.

Validation: 512 <= x <= 65535
eod

ATTR: snd-bufsize
ATTRID: 13
ATTRHDRNAME: AO_DNSSERVER_SNDBUFSZ
ATTRTYPE: AT_RANGEINT(1-65535)
ATTRMCDPATH: snd_bufsize
ATTRVIZ: 1
ATTRDEFVAL: 16384
ATTRDESC:: eod
Size of TCP socket send buffer size in kernel.

Validation: 1 <= x <= 65535
eod

ATTR: no-fetch-glue
ATTRID: 14
ATTRHDRNAME: AO_DNSSERVER_NOFETCHGLUE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRMCDPATH: no_fetch_glue
ATTRVIZ: 5
ATTRDESC:: eod
Specifies whether you want the DNS server, when composing
a response to a query, to fetch missing glue records.
Glue records are DNS A records, which specify the address of a
domain's authoritative name servers. Normal DNS responses include
NS records and their A records related to the name being queried.
eod

ATTR: no-recurse
ATTRID: 15
ATTRHDRNAME: AO_DNSSERVER_NORECURSE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRMCDPATH: no_recurse
ATTRVIZ: 3
ATTRDESC:: eod
Specifies whether you want to disable forwarding client queries
to other name servers when your DNS server is
not authoritative for data in its own cache. If you disable
recursive queries, you make your name server a noncaching server.
eod

ATTR: slave-mode
ATTRID: 16
ATTRHDRNAME: AO_DNSSERVER_SLAVEMODE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_PRINT_ONOFF,AF_FEATURE
ATTRDEFVAL: false
ATTRMCDPATH: slave_mode
ATTRVIZ: 5
ATTRDESC:: eod
Specifies whether you want this server to be a slave server,
which is a server that relies entirely on forwarders for data
that is not in its cache. This command has no effect unless you
also specify the corresponding forwarders. Note that you can
override slave-mode for specific domains with the exception-list
property.
eod

# DEPRECATED in favor of lame-delegation log setting
ATTR: lame-deleg-notify
ATTRID: 17
ATTRHDRNAME: AO_DNSSERVER_LAMEDELEGNOTIFY
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_PRINT_ONOFF,AF_FEATURE
DEPRECATED: 6.1
ATTRDEFVAL: true
ATTRMCDPATH: lame_deleg_notify
ATTRVIZ: 1
ATTRDESC:: eod
Specifies whether you want Network Registrar to notice and
log when a DNS server listed in a parent-zone's delegation
of subzones does not know that is authoritative for the zone.
eod

# DEPRECATED in favor of max-negcache-ttl
#
ATTR: neg-cache-ttl
ATTRID: 18
ATTRHDRNAME: AO_DNSSERVER_NEGCACHETTL
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRMCDPATH: neg_cache_ttl
ATTRVIZ: 5
DEPRECATED: 4.0
ATTRDEFVAL: 600
ATTRDESC:: eod
Indicates how long information learned from other name
servers about non-existent names or data should be cached.
Validation: 0 <= x <= 2147483647
eod


ATTR: min-cache-ttl
ATTRID: 19
ATTRHDRNAME: AO_DNSSERVER_MINCACHETTL
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRMCDPATH: min_cache_ttl
ATTRVIZ: 3
ATTRDEFVAL: 1
ATTRDESC:: eod
The minimum length of time, in seconds, to cache data learned from
other name servers.  Overrides individual resource record TTLs,
which is technically incorrect.  Primarily used to allow
non-cacheable(0 TTL) records to be employed effectively in complex
name resolutions.

Validation: 0 <= x <= 2147483647
eod


ATTR: max-cache-ttl
ATTRID: 20
ATTRHDRNAME: AO_DNSSERVER_MAXCACHETTL
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRMCDPATH: max_cache_ttl
ATTRVIZ: 5
ATTRDEFVAL: 604800
ATTRDESC:: eod
Indicates the maximum amount of time that you want the
DNS server to retain cached information.
Validation: 0 <= x <= 2147483647
eod

ATTR: mem-cache-size
ATTRID: 21
ATTRHDRNAME: AO_DNSSERVER_MAXMEMCACHESIZE
ATTRTYPE: AT_RANGEINT(1-4194303)
ATTRMCDPATH: mem_cache_size_limit
ATTRVIZ: 5
ATTRDEFVAL: 10000
ATTRDESC:: eod
Indicates the size, in kilobytes, of the in-memory record cache
Validation: 1 <= x <= 4194303
eod

ATTR: btree-page-size
ATTRID: 22
ATTRHDRNAME: AO_DNSSERVER_BTREEPAGESIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: btree_page_size
ATTRVIZ: 1
ATTRDEFVAL: 0
ATTRDESC:: eod
Page size of DB B-tree databases.  Zero indicates autosize
to match filesystem blocksize or prefered I/O size.
eod

ATTR: hash-page-size
ATTRID: 23
ATTRHDRNAME: AO_DNSSERVER_HASHPAGESIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: hash_page_size
ATTRVIZ: 1
ATTRDEFVAL: 0
ATTRDESC:: eod
Page size of DB hash-table databases.  Zero indicates
autosize to match filesystem blocksize or prefered I/O size.
eod

ATTR: defer-zone-load
ATTRID: 24
ATTRHDRNAME: AO_DNSSERVER_DEFERZONELOAD
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: true
ATTRMCDPATH: defer_zone_load
ATTRVIZ: 1
DEPRECATED: 4.0
ATTRDESC:: eod
Enable deferred zone loading to improve reload performance
with new zones.
eod

ATTR: cache-reconnect
ATTRID: 25
ATTRHDRNAME: AO_DNSSERVER_CACHERECONNECT
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: true
ATTRMCDPATH: cache_reconnect
ATTRVIZ: 3
ATTRDESC:: eod
Controls reuse of exiting cache database files on reload.
Disabling this will disable cache persistence across reloads
and restarts.
eod

ATTR: auth-reconnect
ATTRID: 26
ATTRHDRNAME: AO_DNSSERVER_AUTHRECONNECT
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: true
ATTRMCDPATH: auth_reconnect
ATTRVIZ: 3
ATTRDESC:: eod
Controls reuse of existing authoritative zone database files
on reload.  Disabling this will force the server to re-read all
zone data from MCD on each reload or restart.
eod

ATTR: xfer-server-concurrent-limit
ATTRID: 27
ATTRHDRNAME: AO_DNSSERVER_XFERSERVERLIMIT
ATTRTYPE: AT_RANGEINT(1-2147483647)
ATTRMCDPATH: xfer_server_concurrent_limit
ATTRVIZ: 3
ATTRDEFVAL: 5
ATTRDESC:: eod
The number of concurrent out-going zone transfers which
may be served.

Validation: >= 1
eod

ATTR: xfer-client-concurrent-limit
ATTRID: 28
ATTRHDRNAME: AO_DNSSERVER_XFERCLIENTLIMIT
ATTRTYPE: AT_RANGEINT(1-2147483647)
ATTRMCDPATH: xfer_client_concurrent_limit
ATTRVIZ: 3
ATTRDEFVAL: 3
ATTRDESC:: eod
The number of concurrent in-coming zone transfers which
will be requested.

Validation: >= 1
eod

ATTR: round-robin
ATTRID: 29
ATTRHDRNAME: AO_DNSSERVER_ROUND_ROBIN
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: true
ATTRMCDPATH: round_robin
ATTRVIZ: 5
ATTRDESC:: eod
Specifies whether you want round-robin cycling of equivalent
records in responses to queries. Equivalent records are records
of the same name and type. Since clients often only look at the
first record of a set, enabling this features can help balance
loads and keep clients from forever trying to talk to an
out-of-service host.
eod

ATTR: axfr-multirec-default
ATTRID: 30
ATTRHDRNAME: AO_DNSSERVER_AXFR_MULTIREC_DEFAULT
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: axfr_multirec_default
ATTRFLAGS: AF_PRINT_ONOFF
ATTRVIZ: 5
ATTRDEFVAL: false
ATTRDESC:: eod
The default multi-record AXFR choice for foreign (remote) servers
not found in remote server list.
eod

ATTR: ixfr-client-default
ATTRID: 31
ATTRHDRNAME: AO_DNSSERVER_IXFR_CLIENT_DEFAULT
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRFLAGS: AF_PRINT_ONOFF
ATTRMCDPATH: ixfr_client_default
ATTRVIZ: 3
ATTRDEFVAL: true
ATTRDESC:: eod
The default IXFR query choice for foreign (remote) servers not found
in remote server list.
eod

ATTR: ixfr-enable
ATTRID: 32
ATTRHDRNAME: AO_DNSSERVER_IXFR_ENABLE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: true
ATTRMCDPATH: ixfr_enable
ATTRVIZ: 5
ATTRDESC:: eod
Controls the incremental transfer behavior for zones for
which you have not configured a specific behavior.
eod

ATTR: chg-set-max-recs
ATTRID: 33
ATTRHDRNAME: AO_DNSSERVER_CHG_SET_MAX_RECS
ATTRTYPE: AT_INT
ATTRMCDPATH: chg_set_max_recs
ATTRVIZ: 1
DEPRECATED: 4.0
ATTRDEFVAL: 0
ATTRDESC:: eod
The maximum number of change records to accumulate in
one change-set.  Zero indicates no limit.
eod

ATTR: ixfr-min-zone-size
ATTRID: 34
ATTRHDRNAME: AO_DNSSERVER_IXFR_MIN_ZONE_SIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: ixfr_min_zone_size
ATTRVIZ: 3
ATTRDEFVAL: 50
ATTRDESC:: eod
The smallest zone size, by resource record count, for which
incremental transfer will be provided.
eod

ATTR: chg-set-history
ATTRID: 35
ATTRHDRNAME: AO_DNSSERVER_CHG_SET_HISTORY
ATTRTYPE: AT_INT
ATTRMCDPATH: chg_set_history
ATTRVIZ: 1
DEPRECATED: 4.0
ATTRDEFVAL: 10
ATTRDESC:: eod
The number of serial number change-sets, per zone, which
should be preserved for the generation of incremental transfers.
Zero indicates no limit.
eod

ATTR: chg-set-max-age
ATTRID: 36
ATTRHDRNAME: AO_DNSSERVER_CHG_SET_MAX_AGE
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRMCDPATH: chg_set_max_age
ATTRVIZ: 1
DEPRECATED: 4.0
ATTRDEFVAL: 0
ATTRDESC:: eod
The longest time, in seconds, for which serial number change-sets
should be preserverd for the generation of incremental transfers.
Zero indicates no limit.

Validation: 0 <= x <= 2147483647
eod

ATTR: chg-set-total-recs
ATTRID: 37
ATTRHDRNAME: AO_DNSSERVER_CHG_SET_TOTAL_RECS
ATTRTYPE: AT_INT
ATTRMCDPATH: chg_set_total_recs
ATTRVIZ: 1
DEPRECATED: 4.0
ATTRDEFVAL: 0
ATTRDESC:: eod
The maximum number of change set records to preserve, across
multiple serial number changes, for the generation of incremental
transfers.  Zero indicates no limit.
eod

ATTR: ixfr-expire-interval
ATTRID: 38
ATTRHDRNAME: AO_DNSSERVER_IXFR_EXPIRE_INTERVAL
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRMCDPATH: ixfr_expire_interval
ATTRVIZ: 5
ATTRDEFVAL: 604800
ATTRDESC:: eod
Indicates the longest interval to allow a secondary zone
to be maintained solely with incremental transfers. After
this period, the server will request a full zone transfer.
This property helps ensure zone integrity.

Validation: 0 <= x <= 2147483647
eod

ATTR: notify
ATTRID: 39
ATTRHDRNAME: AO_DNSSERVER_NOTIFY_ENABLE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: true
ATTRMCDPATH: notify_enable
ATTRVIZ: 5
ATTRDESC:: eod
Controls sending NOTIFY packets for zones for which you have
not configured a specific behavior. See the properties
notify-defer-cnt, notify-min-interval, notify-rcv-internal,
notify-send-stagger, notify-wait.
eod

ATTR: notify-send-stagger
ATTRID: 40
ATTRHDRNAME: AO_DNSSERVER_NOTIFY_SEND_STAGGER
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRMCDPATH: notify_send_stagger
ATTRVIZ: 5
ATTRDEFVAL: 1
ATTRDESC:: eod
The interval to stagger notification of multiple servers
of a particular change.
Validation: 0 <= x <= 2147483647
eod

ATTR: notify-min-interval
ATTRID: 41
ATTRHDRNAME: AO_DNSSERVER_NOTIFY_MIN_INTERVAL
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRMCDPATH: notify_min_interval
ATTRVIZ: 5
ATTRDEFVAL: 2
ATTRDESC:: eod
The minimum interval required before sending notification
of consecutive changes on the same zone to a particular server.
Validation: 0 <= x <= 2147483647
eod

ATTR: notify-wait
ATTRID: 42
ATTRHDRNAME: AO_DNSSERVER_NOTIFY_WAIT
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRMCDPATH: notify_wait
ATTRVIZ: 5
ATTRDEFVAL: 5
ATTRDESC:: eod
The period of time to delay, after an initial zone change,
before sending change notification to other name servers.
This property allows you to accumulate multiple changes,
and thus limit the number of times the serial number advances.
Validation: 0 <= x <= 2147483647
eod

ATTR: notify-defer-cnt
ATTRID: 43
ATTRHDRNAME: AO_DNSSERVER_NOTIFY_DEFER_CNT
ATTRTYPE: AT_INT
ATTRMCDPATH: notify_defer_cnt
ATTRVIZ: 5
ATTRDEFVAL: 100
ATTRDESC:: eod
The maximum number of changes you want to accumulate
during the notify-wait period. If this number is exceed,
the DNS server will send notification before the
notify-wait period has passed.
eod

ATTR: notify-rcv-interval
ATTRID: 44
ATTRHDRNAME: AO_DNSSERVER_NOTIFY_RCV_INTERVAL
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRMCDPATH: notify_rcv_interval
ATTRVIZ: 5
ATTRDEFVAL: 5
ATTRDESC:: eod
For secondary zones, this is the minimum amount of time between
the completion of processing of one notification (serial
number testing and/or zone transfer), and the start of
processing of another notification.
Validation: 0 <= x <= 2147483647
eod

ATTR: update-relax-zone-name
ATTRID: 45
ATTRHDRNAME: AO_DNSSERVER_UPDATE_RELAX_ZONE_NAME
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRMCDPATH: update_relax_zone_name
ATTRVIZ: 5
ATTRDESC:: eod
Enables relaxation of the RFC 2136 restriction on the "zone name"
record in dynamic updates. This feature allows updates to specify a
zone name which is any name within an authoritative zone rather than
exactly the name of a zone.
eod

ATTR: do-incr-zone-load
ATTRID: 46
ATTRHDRNAME: AO_DNSSERVER_DO_INCR_ZONE_LOAD
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: true
ATTRMCDPATH: do_incr_zone_load
ATTRVIZ: 3
ATTRDESC:: eod
Enables incremental (change-based) loading of changes to primary
zone resource records, rather than reloading of entire zones records.
eod

ATTR: strm-bufsize
ATTRID: 47
ATTRHDRNAME: AO_DNSSERVER_STRM_BUFSIZE
ATTRTYPE: AT_RANGEINT(1024-0xffff)
ATTRMCDPATH: strm_bufsize
ATTRVIZ: 1
ATTRDEFVAL: 16384
ATTRDESC:: eod
Size of buffers allocated for composition of TCP responses and
zone transfer packets.

Validation: 1024 <= x <= 65535
eod

ATTR: table-read-cnt
ATTRID: 48
ATTRHDRNAME: AO_DNSSERVER_TABLE_READ_CNT
ATTRTYPE: AT_RANGEINT(1-10000)
ATTRMCDPATH: table_read_cnt
ATTRVIZ: 1
ATTRDEFVAL: 200
ATTRDESC:: eod
Maximum number of RR Table records to read in one MCD transaction.

Validation: 1 <= x <= 10000
eod

ATTR: table-write-cnt
ATTRID: 49
ATTRHDRNAME: AO_DNSSERVER_TABLE_WRITE_CNT
ATTRTYPE: AT_RANGEINT(1-10000)
ATTRMCDPATH: table_write_cnt
ATTRVIZ: 1
DEPRECATED: 4.0
ATTRDEFVAL: 100
ATTRDESC:: eod
Maximum number of existing RR Table records to write in one
MCD transaction.  Used for "whiting-out" deleted records (preserved
as deletions for IXFR).

Validation: 1 <= x <= 10000
eod

ATTR: table-clobber-cnt
ATTRID: 50
ATTRHDRNAME: AO_DNSSERVER_TABLE_CLOBBER_CNT
ATTRTYPE: AT_RANGEINT(1-10000)
ATTRMCDPATH: table_clobber_cnt
ATTRVIZ: 1
DEPRECATED: 4.0
ATTRDEFVAL: 150
ATTRDESC:: eod
Maximum number of RR Table records to eliminate in one MCD
transaction.  Used for removing historical records (preserved
for IXFR) or failed zone transfers.

Validation: 1 <= x <= 10000
eod

ATTR: table-setmany-cnt
ATTRID: 51
ATTRHDRNAME: AO_DNSSERVER_TABLE_SETMANY_CNT
ATTRTYPE: AT_RANGEINT(1-10000)
ATTRMCDPATH: table_setmany_cnt
ATTRVIZ: 1
DEPRECATED: 4.0
ATTRDEFVAL: 75
ATTRDESC:: eod
Maximum number of RR Table records so add in one MCD transaction.
Used for buffering of writes for full zone transfers.

Validation: 1 <= x <= 10000
eod

ATTR: xfer-server-max-time
ATTRID: 52
ATTRHDRNAME: AO_DNSSERVER_XFER_SERVER_MAX_TIME
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRMCDPATH: xfer_server_max_time
ATTRVIZ: 3
ATTRDEFVAL: 21600
ATTRDESC:: eod
Maximum time, in seconds, to allow an outbound zone transfer to go on.

Validation: 0 <= x <= 2147483647
eod

ATTR: xfer-client-error-handling-flags
ATTRID: 53
ATTRHDRNAME: AO_DNSSERVER_XFER_CLIENT_ERROR_HANDLING_FLAGS
ATTRTYPE: AT_FLAGSINT(ignore-inval-recs=1, ignore-inval-class=2, log-inval-recs=9, log-inval-class=10, ignore-dupl-recs=11)
ATTRMCDPATH: xfer_client_error_handling_flags
ATTRVIZ: 3
ATTRDEFVAL: 1795
ATTRDESC:: eod
Bitmap indicating handling of invalid and improper-class
resource records received in zone transfers.  Controls logging
and continuation of transfer.
eod

ATTR: xfer-client-def-retry-time
ATTRID: 54
ATTRHDRNAME: AO_DNSSERVER_XFER_CLIENT_DEF_RETRY_TIME
ATTRTYPE: AT_RANGETIME(1-2147483647)
ATTRMCDPATH: xfer_client_def_retry_time
ATTRVIZ: 3
ATTRDEFVAL: 600
ATTRDESC:: eod
Default zone transfer retry time used for secondary zones
which have not yet seen an SOA record (and for that reason do
not know the correct retry time).

Validation: 1 <= x <= 2147483647
eod

ATTR: notify-retry
ATTRID: 55
ATTRHDRNAME: AO_DNSSERVER_NOTIFY_RETRY
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRMCDPATH: notify_retry
ATTRVIZ: 3
ATTRDEFVAL: 10
ATTRDESC:: eod
The period of time to delay, after encountering an error
sending change notification to other name servers, before
retrying sending the change notification.

Validation: 0 <= x <= 2147483647
eod

ATTR: defer-wrt-interval
ATTRID: 56
ATTRHDRNAME: AO_DNSSERVER_DEFER_WRT_INTERVAL
ATTRTYPE: AT_INT
ATTRDEFVAL: 1000
ATTRMCDPATH: defer_wrt_interval
ATTRVIZ: 1
DEPRECATED: 4.0
ATTRDESC:: eod
The interval (in milliseconds) at which to flush deferred dynamic
update resource records to the the database.
eod

ATTR: subnet-sorting
ATTRID: 57
ATTRHDRNAME: AO_DNSSERVER_SUBNET_SORTING
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRMCDPATH: subnet_sorting
ATTRVIZ: 5
ATTRDESC:: eod
Specifies whether you want the address records in responses to queries
to be reordered based on the subnet of the client. Since clients often
only look at the first record of a set, enabling this features can
help localize network traffic onto a subnet. This feature is only
applied on answers to queries from clients located on the same subnet
as the DNS server.
eod

ATTR: fail-if-unknown
ATTRID: 58
ATTRHDRNAME: AO_DNSSERVER_FAIL_IF_UNKNOWN
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: fail_if_unknown
ATTRVIZ: 3
ATTRDEFVAL: false
ATTRDESC:: eod
Configures the server to respond with SERVFAIL if a non-recursive
query would result in a referral rather than an authoritative
response.
eod

ATTR: force-recursion
ATTRID: 59
ATTRHDRNAME: AO_DNSSERVER_FORCE_RECURSION
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: force_recursion
ATTRVIZ: 3
ATTRDEFVAL: false
ATTRDESC:: eod
Configures the server to force queries to be recursive. This is
related to the attribute fail_if_unknown which will respond with an
error rather than referring the client to another name server.
eod

ATTR: hide-subzones
ATTRID: 60
ATTRHDRNAME: AO_DNSSERVER_HIDE_SUBZONES
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: hide_subzones
ATTRVIZ: 3
ATTRDEFVAL: false
ATTRDESC:: eod
Configures the server to hide all information about the subzone
hierarchy for all zones delegated from this server.  This feature
effectively collapses a portion of the domain namespace into one
"virtual zone".
eod

#
# this attr wasn't ever used in cnr
#
ATTR: static-address-pools
ATTRID: 61
ATTRHDRNAME: AO_DNSSERVER_STATIC_ADDRESS_POOLS
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRMCDPATH: static_address_pools
DEPRECATED: 3.0
ATTRVIZ: 1
ATTRDESC:: eod
Controls whether management of address allocation using static
address pools is allowed.  Enabling creates the outside-address-pool
and enabled maintenance of it.  Disabling removes the
outside-address-pool and deletes any static-pool objects.
All address allocations are retained, but are no longer associated
with a pool.
eod

ATTR: use-update-optimization
ATTRID: 62
ATTRHDRNAME: AO_DNSSERVER_USE_UPDATE_OPTIMIZATION
ATTRTYPE: AT_BOOL
ATTRDEFVAL: true
ATTRMCDPATH: use_update_optimization
ATTRVIZ: 3
ATTRDESC:: eod
Controls whether dns code checks for multiple pending updates to
RR buffer.
If TRUE, code checks if we're the only pending update to the buffer,
and if so, it does a flush of the RRs to the database.
If FALSE, this optimization will be skipped, and we won't flush
on this particular event.  This flag was added to help with case
where many updates are pending directly after we've locked and
checked, so many extra flushes are being done.
eod

ATTR: min-working-set-size
ATTRID: 63
ATTRHDRNAME: AO_DNSSERVER_MIN_WORKING_SET_SIZE
ATTRTYPE: AT_INT
ATTRDEFVAL: 0
ATTRMCDPATH: min_working_set_size
ATTRVIZ: 3
ATTRDESC:: eod
For NT platforms, defines the DNS server's minimum working set size.
eod

ATTR: max-working-set-size
ATTRID: 64
ATTRHDRNAME: AO_DNSSERVER_MAX_WORKING_SET_SIZE
ATTRTYPE: AT_INT
ATTRDEFVAL: 0
ATTRMCDPATH: max_working_set_size
ATTRVIZ: 3
ATTRDESC:: eod
For NT platforms, defines the DNS server's maximum working set size.
eod

ATTR: enforce-min-ttl
ATTRID: 65
ATTRHDRNAME: AO_DNSSERVER_ENFORCEMINTTL
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRMCDPATH: enforce_min_ttl
ATTRVIZ: 3
ATTRDESC:: eod
Enforce minimum ttl using minttl value in dns server definition.
eod

ATTR: relax-ixfr-query-validation
ATTRID: 66
ATTRHDRNAME: AO_DNSSERVER_RELAX_IXFR_QUERY_CHECK
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRMCDPATH: relax_ixfr_query_validation
ATTRVIZ: 3
ATTRDESC:: eod
When responding to an IXFR request with a full zone response,
BIND 8.2.2p5 returns a response containing an AXFR in the
query section when it should be IXFR - matching the original
request. CNR expects question(s) in a response to match what was
originally furnished in the request. Though this is clearly a BIND
bug, BIND 8.2.2p5 is widely deployed. Hence, as a workaround,
enabling this DNS server attribute shall cause CNR to relax the
query validation in IXFR responses.
eod

ATTR: simulate-zone-top-dynupdate
ATTRID: 67
ATTRHDRNAME: AO_DNSSERVER_SIMULATE_ZONE_TOP_DYNUPDATE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRMCDPATH: simulate_zone_top_dynupdate
ATTRVIZ: 5
ATTRDESC:: eod
For Windows 2000 Domain Controller compatibility: When processing
a dynamic update packet which attempts to add or remove "A" records
from the name of a zone, respond as if the update was successful,
rather than responding with a refusal, as would normally occur due
to the static/dynamic name conflict.  No update to the records at
the zone name will actually occur, although the response will
indicate that it has.
eod

ATTR: changeset-db-transaction-interval
ATTRID: 71
ATTRHDRNAME: AO_DNSSERVER_CSETDB_XACT_INTERVAL
ATTRTYPE: AT_RANGEINT(2-2000)
ATTRDEFVAL: 10
ATTRMCDPATH: changeset_db_xact_interval
ATTRVIZ: 3
ATTRDESC:: eod
Time interval (ms) to commit a Changeset DB transaction
in the underlying Btree DB. Default is 10 ms.

Validation: 2 <= x <= 2000

eod

ATTR: changeset-db-checkpoint-interval
ATTRID: 72
ATTRHDRNAME: AO_DNSSERVER_CSETDB_CKPT_INTERVAL
ATTRTYPE: AT_RANGETIME(5-300)
ATTRDEFVAL: 20
ATTRMCDPATH: changeset_db_ckpt_interval
ATTRVIZ: 3
ATTRDESC:: eod
The interval (secs) at which the changeset database will be internally
checkpointed. Default is 20 secs.

Validation: 5 <= x <= 300

eod

ATTR: changeset-db-heap-size
ATTRID: 73
ATTRHDRNAME: AO_DNSSERVER_CSETDB_HEAP_SIZE
ATTRTYPE: AT_RANGEINT(128-768)
ATTRDEFVAL: 512
ATTRMCDPATH: changeset_db_heap_size
ATTRVIZ: 3
ATTRDESC:: eod
Changeset DB's one shot heap size (KBs). Default is 512 KB.

Validation: 128 <= x <= 768

eod

ATTR: changeset-db-cache-size
ATTRID: 74
ATTRHDRNAME: AO_DNSSERVER_CSETDB_CACHE_SIZE
ATTRTYPE: AT_RANGEINT(200-50000)
ATTRDEFVAL: 10000
ATTRMCDPATH: changeset_db_cache_size
ATTRVIZ: 3
ATTRDESC:: eod
Changeset DB's underlying Btree total cache size (KBs).
Default is 10000 KB.

Validation: 200 <= x <= 50000

eod

ATTR: changeset-db-cache-partitions
ATTRID: 75
ATTRHDRNAME: AO_DNSSERVER_CSETDB_CACHE_PARTITIONS
ATTRTYPE: AT_RANGEINT(1-5)
ATTRDEFVAL: 1
ATTRMCDPATH: changeset_db_cache_partitions
ATTRVIZ: 3
ATTRDESC:: eod
The changeset DB's underlying Btree cache can be allocated as a
single partition.  However, on certain architectures, the size of
contiguous memory is limited; hence, the cache may need to be 
(equally) partitioned.

A value of zero or one (default) designates one contiguous 
partition; values greater than one designates the cache will 
be broken up into changeset-db-cache-partitions equally sized
but separate pieces of memory.

Default is 1 partition.

Validation: 1 <= x <= 5

eod

ATTR: changeset-db-logs-trimming-interval
ATTRID: 76
ATTRHDRNAME: AO_DNSSERVER_CSETDB_LOGS_TRIM_INTERVAL
ATTRTYPE: AT_RANGETIME(10-1200)
ATTRDEFVAL: 600
ATTRMCDPATH: changeset_db_logs_trimming_interval
ATTRVIZ: 3
ATTRDESC:: eod
Time interval (secs) of the Changeset DB's trimming of its unneeded 
Btree DB's log files. Default is 600s.

Validation: 10 <= x <= 1200

eod

ATTR: changeset-db-log-size
ATTRID: 77
ATTRHDRNAME: AO_DNSSERVER_CSETDB_LOG_SIZE
ATTRTYPE: AT_RANGEINT(2-20)
ATTRDEFVAL: 10
ATTRMCDPATH: changeset_db_log_size
ATTRVIZ: 3
ATTRDESC:: eod
Changeset DB's underlying Btree log file size (MBs).
Default is 10 MB.

Validation:  2 <= x <= 20
eod

ATTR: changeset-db-log-buffer-size
ATTRID: 78
ATTRHDRNAME: AO_DNSSERVER_CSETDB_LOG_BUFFER_SIZE
ATTRTYPE: AT_RANGEINT(32-2000)
ATTRDEFVAL: 32
ATTRMCDPATH: changeset_db_log_buffer_size
ATTRVIZ: 3
ATTRDESC:: eod
Changeset DB's underlying Btree initially logs a transaction in 
memory and ultimately gets flushed to stable store when the
transaction gets commited.  This attribute specifies the size 
of the (in-memory) log buffer which initially contains the 
transaction. (KBs)  Default is 32 KB.

Validation: 32 <= x <= 2000
eod

ATTR: checkpoint-interval
ATTRID: 79
ATTRHDRNAME: AO_DNSSERVER_CHECKPOINT_INTERVAL
ATTRTYPE: AT_RANGETIME(3600-604800)
ATTRMCDPATH: checkpoint_interval
ATTRVIZ: 5
ATTRDEFVAL: 10800
ATTRDESC:: eod
The global interval (seconds) at which the zone is zone checkpointed 
(i.e. latest zone snapshot is recorded in the Zone Checkpoint DB).

Validation: 1 hour (3600 seconds) <= x <= 168 hours (604800 seconds)
eod

ATTR: log-settings
ATTRID: 80
ATTRHDRNAME: AO_DNSSERVER_LOGSETTING
# DO NOT USE BITS 6, 7 & 12 FOR THEY ARE RESERVED. THEY WERE USED IN 5.5 FOR
# EMPTY LOG-SETTINGS CATEGORIES. THESE EMPTY CATEGORIES HAVE BEEN REMOVED TO
# ELIMINATE CUSTOMER CONFUSIONS.
ATTRTYPE: AT_FLAGSINT( config=1, ddns=2, xfr-in=3, xfr-out=4, notify=5, datastore=8, scavenge=9, scavenge-details=10, server-operations=11, lame-delegation=13, root-query=14, ddns-refreshes=15, ddns-refreshes-details=16, ddns-details=17, tsig=18, tsig-details=19, activity-summary=20,query-errors=21,config-details=22, incoming-packets=23, outgoing-packets=24, xfr-in-packets=25, query-packets=26, notify-packets=27, ddns-packets=28, xfr-out-packets=29)
ATTRDEFVAL: config,ddns,xfr-in,xfr-out,notify,datastore,scavenge,server-operations,lame-delegation,root-query,tsig,query-errors
ATTRMCDPATH: log_settings
ATTRVIZ: 5
ATTRDESC:: eod
The DNS server will log additional detail about the events listed
in the log-settings. The additional detail can be very helpful when
analyzing a problem, but can cause the log files to fill up quickly
(and therefore to turn over frequently, possibly losing important
information) if left enabled for a long period of time.
eod
VDESC::eod

The possible flags are:
  config
    This flag will cause log messages pertaining to server configuration and
    server de-initialization (unconfiguration).

  ddns
    This flag will cause the logging of high-level DDNS messages. Detailed
    DDNS logging (e.g. RRs that have been deleted or added) can be enabled
    via ddns-details.

  xfr-in
    This flag will allow the generation of log messages associated with
    inbound full and incremental zone transfers.

  xfr-out
    This flag will allow the generation of log messages associated with
    outbound full and incremental zone transfers.

  notify
    This flag allows log messages associated with the processing of notify
    messages.

  datastore
    This flag allows the generation of log messages associated with datastores
    processing. Enabling this flag provides insight into various events in the
    server's embedded databases/datastores.

  scavenge
     This flag allows the logging of events associated (RR) scavenging.

  scavenge-details
     This flag causes more detailed logging, pertaining to scavenging, to
     be displayed. Note, this flag is disabled by default.

  server-operations
     This flag enables the logging of general high server events (such as
     those pertaining to sockets and interfaces).

  lame-delegation
    This flag allows the logging of lame-delegation events. Though enabled
    by default, disabling this flag could prevent the log from getting filled
    with frequent lame-delegation encounnters.

  root-query
     This flag allows the generation of log messages associated queries (and
     responses) from root servers.

  ddns-refreshes
     This flag allows the server to log messasges associated with (W2K) DDNS
     refreshes.

  ddns-refreshes-details
     This flag generates log messages that provide details describing RRs that
     were refreshed.

  ddns-details
     This flag enables detailed logging that describes the RR(s) that heve
     deleted/added due to DDNS updates.

  tsig
     This flag allows the logging of events associated Transaction Signature
     (TSIG) DDNS updates.

  tsig-details
     This flag causes more detailed logging, pertaining to tsig, to
     be displayed. Note, this flag is disabled by default.

  query-errors
     This flag causes logging of errors encountered while processing
     DNS queries.

  config-details
     This flag generates detailed information during server configuration
     (e.g. displaying all configured and assumed server attributes)

  incoming-packets
     This flag causes incoming packets to be traced.
	
  outgoing-packets
     This flag causes outgoing packets to be traced.

  xfr-in-packets
     This flag causes incoming zone transfer packets to be traced.

  xfr-out-packets
     This flag causes outgoing zone transfer packets to be traced.

  query-packets
     This flag causes query packets to be traced.

  notify-packets
     This flag causes notify packets to be traced.

  ddns-packets
     This flag causes DDNS packets to be traced.

  performance
     This flag logs server level performance statistics.

eod

ATTR: scp-port
ATTRID: 81
ATTRHDRNAME: AO_DNSSERVER_SCP_PORT
ATTRTYPE: AT_RANGEINT(0-65535)
ATTRMCDPATH: scp_listen_port
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the scp port number to be used. If the requested port
number is in use, the server will select an alternate number to use.
eod

ATTR: auth-db-cache-size
ATTRID: 82
ATTRHDRNAME: AO_DNSSERVER_AUTHDB_CACHESIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: auth_db_cache_size
ATTRVIZ: 1
DEPRECATED: 4.0
ATTRDEFVAL: 20
ATTRDESC:: eod
(Maximum) number of (internal cache) pages comprising the btree used
by the AUTHZONE DB.
eod

ATTR: cache-db-cache-size
ATTRID: 83
ATTRHDRNAME: AO_DNSSERVER_CACHEDB_CACHESIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: cache_db_cache_size
ATTRVIZ: 1
DEPRECATED: 4.0
ATTRDEFVAL: 20
ATTRDESC:: eod
(Maximum) number of (internal cache) pages comprising the btree
used by the CACHE DB.
eod

ATTR: save-negative-cache-entries
ATTRID: 84
ATTRHDRNAME: AO_DNSSERVER_SAVE_NEGATIVE_CACHE_ENTRIES
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: true
ATTRMCDPATH: save_negative_cache_entries
ATTRVIZ: 5
ATTRDESC:: eod
Disabling this feature results in no negative query responses being
persistently cached.
eod

ATTR: cache-write-ttl-threshhold
ATTRID: 85
ATTRHDRNAME: AO_DNSSERVER_CACHE_WRITE_TTL_THRESHHOLD
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRDEFVAL: 0
ATTRMCDPATH: cache_write_ttl_threshhold
ATTRVIZ: 1
DEPRECATED: 4.0
ATTRDESC:: eod
Resource Records with TTLs less than this value will not be written
to the cache database on disk.  A zero value disables this threshhold
test, allowing all unexpired Resource Records to be written.

Validation: >= 0
eod

ATTR: fake-ip-name-response
ATTRID: 86
ATTRHDRNAME: AO_DNSSERVER_FAKE_IP_NAME_RESPONSE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: true
ATTRMCDPATH: fake_ip_name_response
ATTRVIZ: 5
ATTRDESC:: eod
Enabling this feature causes the server to reject queries of fully
qualified names which are of the form of an IP address. The server
responds to these queries indicating the name does not exist.  Name
of this form are not found on the internet.  Queries of this type
are generally from rogue applications.
eod

ATTR: synthesize-aaaa-records
ATTRID: 87
ATTRHDRNAME: AO_DNSSERVER_SYNTHESIZE_AAAA_RECORDS
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRMCDPATH: synthesize_aaaa_records
ATTRVIZ: 3
ATTRDESC:: eod
Synthesize AAAA record responses from A6 record data. This is to
support older clients which do not request or understand A6 records
for IPv6 address information.
eod

ATTR: auth-db-cache-kbytes
ATTRID: 88
ATTRHDRNAME: AO_DNSSERVER_AUTHDB_CACHE_KBYTES
ATTRTYPE: AT_INT
ATTRMCDPATH: auth_db_cache_kbytes
ATTRVIZ: 5
ATTRDEFVAL: 5120
ATTRDESC:: eod
Size (kbytes) of internal BTREE cache used by the AUTHZONE DB. Note, 
this value will be rounded-up to the nearest 4 (kbyte) boundary. For
example, a 81 (kbyte) value will be rounded up to 84 (kbytes).
Values below 36 (kbytes) will be ignored; 36 (kbytes) will be used
instead. Default is 5120 kbytes.
eod

ATTR: cache-db-cache-kbytes
ATTRID: 89
ATTRHDRNAME: AO_DNSSERVER_CACHEDB_CACHE_KBYTES
ATTRTYPE: AT_INT
ATTRMCDPATH: cache_db_cache_kbytes
ATTRVIZ: 5
ATTRDEFVAL: 5120
ATTRDESC:: eod
Size (kbytes) of internal BTREE cache used by the CACHE DB. Note, 
this value will be rounded-up to the nearest 4 (kbyte) boundary. 
For example, a 81 (kbyte) value will be rounded up to 84 (kbytes). 
Values below 36 (kbytes) will be ignored; 36 (kbytes) will be used 
instead. Default is 5120 kbytes.
eod

ATTR: scvg-interval
ATTRID: 90
ATTRHDRNAME: AO_DNSSERVER_SCVG_INTERVAL
ATTRTYPE: AT_RANGETIME(3600-31536000)
ATTRMCDPATH: scvg_interval
ATTRVIZ: 5
ATTRDEFVAL: 604800
ATTRDESC:: eod
The interval (seconds) at which the zone gets scheduled for
scavenging.

Validation: 3600 <= x <= 31536000
eod

ATTR: scvg-no-refresh-interval
ATTRID: 91
ATTRHDRNAME: AO_DNSSERVER_SCVG_NO_REFRESH_INTERVAL
ATTRTYPE: AT_RANGETIME(3600-31536000)
ATTRMCDPATH: scvg_no_refresh_interval
ATTRVIZ: 5
ATTRDEFVAL: 604800
ATTRDESC:: eod
The interval (seconds) which the zone cannot have a timestamp updated.

Validation: 3600 <= x <= 31536000
eod

ATTR: scvg-refresh-interval
ATTRID: 92
ATTRHDRNAME: AO_DNSSERVER_SCVG_REFRESH_INTERVAL
ATTRTYPE: AT_RANGETIME(3600-31536000)
ATTRMCDPATH: scvg_refresh_interval
ATTRVIZ: 5
ATTRDEFVAL: 604800
ATTRDESC:: eod
The interval (seconds) which the zone can have a timestamp updated

Validation: 3600 <= x <= 31536000
eod

ATTR: scvg-ignore-restart-interval
ATTRID: 93
ATTRHDRNAME: AO_DNSSERVER_SCVG_IGNORE_RESTART_INTERVAL
ATTRTYPE: AT_RANGETIME(7200-86400)
ATTRMCDPATH: scvg_ignore_restart_interval
ATTRVIZ: 5
ATTRDEFVAL: 7200
ATTRDESC:: eod
The interval (seconds) for which a restart will not recalculate
a start scavenging time.

Validation: 7200 <= x <= 86400
eod

ATTR: scvg-max-records-searched
ATTRID: 94
ATTRHDRNAME: AO_DNSSERVER_SCVG_MAX_RECORDS_SEARCHED
ATTRTYPE: AT_RANGEINT(1-2000000000)
ATTRMCDPATH: scvg_max_records_searched
ATTRVIZ: 3
ATTRDEFVAL: 1000
ATTRDESC:: eod
The maximum number of records to search at one time for a
candidate to be scavenged.

Validation: 1 <= x <= 2000000000
eod

ATTR: cache-write-ttl-threshold
ATTRID: 95
ATTRHDRNAME: AO_DNSSERVER_CACHE_WRITE_TTL_THRESHOLD
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRDEFVAL: 0
ATTRMCDPATH: cache_write_ttl_threshold
ATTRVIZ: 3
ATTRDESC:: eod
Resource Records with TTLs less than this value will not be written
to the cache database on disk.  A zero value disables this threshold
test, allowing all unexpired Resource Records to be written.

Validation: >= 0
eod

ATTR: scvg-pause-interval
ATTRID: 96
ATTRHDRNAME: AO_DNSSERVER_SCVG_PAUSE_INTERVAL
ATTRTYPE: AT_RANGETIME(1-86400)
ATTRMCDPATH: scvg_pause_interval
ATTRVIZ: 3
ATTRDEFVAL: 1
ATTRDESC:: eod
The amount of time (in seconds) that scavenging will wait after 
scavenging a set of records, before going onto the next set.

Validation: 1 <= x <= 86400
eod

ATTR: query-source-port
ATTRID: 97
ATTRHDRNAME: AO_DNSSERVER_QUERY_SOURCE_PORT
ATTRTYPE: AT_RANGEINT(0-65535)
ATTRMCDPATH: query_source_port
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the UDP port number from which the DNS server will send
queries to other servers when resolving names for clients.  A
value of zero indicates that a random port should be chosen.  If
this attribute is unset, then queries will be sent from the
port used to listen for queries (see local-port-num).
Validation: [0, 65535]
eod

ATTR: query-source-address
ATTRID: 98
ATTRHDRNAME: AO_DNSSERVER_QUERY_SOURCE_ADDR
ATTRTYPE: AT_IPADDR
ATTRMCDPATH: query_source_addr
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the source IP address from which the DNS server will send
queries to other servers when resolving names for clients.  A
value of 0.0.0.0 indicates that OS will use the best local address
based on the destination.
eod

ATTR: changeset-db-history-trim-interval
ATTRID: 99
ATTRHDRNAME: AO_DNSSERVER_CSETDB_HISTORY_TRIM_INTERVAL
ATTRTYPE: AT_RANGEINT(10-3600)
ATTRDEFVAL: 200
ATTRMCDPATH: changeset_db_history_trim_interval
ATTRVIZ: 0
ATTRDESC:: eod
The interval (seconds) at which the changeset database will 
perform history trimming (i.e. purge old changesets that have
been checkpointed). Default is 200 seconds. Deprecated.

Validation: 10 <= x <= 3600
eod

ATTR: changeset-db-max-rr-size
ATTRID: 100
ATTRHDRNAME: AO_DNSSERVER_CSETDB_MAX_RR_SIZE
ATTRTYPE: AT_RANGEINT(10000-5000000)
ATTRDEFVAL: 500000
ATTRMCDPATH: changeset_db_max_rr_size
ATTRVIZ: 3
ATTRDESC:: eod

The maximum number of records in the changeset db, before issuing a
forced zone checkpoint, in RRs. Default is 500000 records.

Validation: 10000 <= x <= 5000000
eod

ATTR: changeset-db-hist-max-trim-count
ATTRID: 101
ATTRHDRNAME: AO_DNSSERVER_CSETDB_HIST_MAX_TRIM_COUNT
ATTRTYPE: AT_RANGEINT(200-20000)
ATTRDEFVAL: 2000
ATTRMCDPATH: changeset_db_hist_max_trim_count
ATTRVIZ: 3
ATTRDESC:: eod

The maximum number of (changeset) records to delete at one time 
for history trimming. Default is 2000 records.

Validation: 200 <= x <= 20000
eod


ATTR: changeset-db-err-log-enabled
ATTRID: 102
ATTRHDRNAME: AO_DNSSERVER_CSETDB_ERR_LOG
ATTRTYPE: AT_BOOL
ATTRDEFVAL: true
ATTRMCDPATH: changeset_db_err_log_enabled
ATTRVIZ: 3
ATTRDESC:: eod

Enable sleepycat's error logging.

eod


ATTR: changeset-db-history-kept
ATTRID: 104
ATTRHDRNAME: AO_DNSSERVER_CSETDB_HISTORY_KEPT
ATTRTYPE: AT_RANGEINT(100-20000)
ATTRDEFVAL: 400
ATTRMCDPATH: changeset_db_history_kept
ATTRVIZ: 3
ATTRDESC:: eod

The maximum number of history that we will keep when performing 
history trimming. This is to facilitate IXFRs. Default is 400.

Validation: 100 <= x <= 20000
eod

ATTR: changeset-db-max-age
ATTRID: 105
ATTRHDRNAME: AO_DNSSERVER_CSETDB_MAX_AGE
ATTRTYPE: AT_RANGETIME(0-3600)
ATTRDEFVAL: 0
ATTRMCDPATH: changeset_db_max_age
ATTRVIZ: 3
ATTRDESC:: eod

The maximum age that we will allow a history trimming element 
to be before deciding to delete that element. If this value is 
set to zero, we will not consider the record age when trimming. 
Default is 0.

Validation: 0 <= x <= 3600
eod

ATTR: changeset-db-reads-per-transaction
ATTRID: 106
ATTRHDRNAME: AO_DNSSERVER_CSETDB_READS_PER_XACT
ATTRTYPE: AT_RANGEINT(100-10000)
ATTRDEFVAL: 1000
ATTRMCDPATH: changeset_db_reads_per_xact
ATTRVIZ: 3
ATTRDESC:: eod

This attribute defines the maximum number of reads that will be
conducted on a Sleepycat DB transaction. Once this limit is hit,
the Changeset DB shall close the current read transaction and
open up a new one.

Validation: 100 <= x <= 10000
eod

ATTR: checkpoint-min-interval
ATTRID: 107
ATTRHDRNAME: AO_DNSSERVER_CHECKPOINT_MIN_INTERVAL
ATTRTYPE: AT_RANGETIME(60-2700)
ATTRMCDPATH: checkpoint_min_interval
ATTRDEFVAL: 300
ATTRVIZ: 3
ATTRDESC:: eod
The minimum amount of time required ( in seconds ) between the time
the first zone checkpoint occurs and the second zone checkpoint 
starts.  For dynamic checkpoints only. Default is 5m.

Validation: 60 <= x <= 2700
eod

ATTR: htrim-zone-size-to-travel
ATTRID: 108
ATTRHDRNAME: AO_DNSSERVER_HTRIM_ZONE_SIZE_TO_TRAVEL
ATTRTYPE: AT_RANGEINT(5-100)
ATTRMCDPATH: htrim_zone_size_to_travel
ATTRDEFVAL: 50		
ATTRVIZ: 3
ATTRDESC:: eod
Percentage of the zone to travel.  Default is 50%.

Validation: 2 <= x <= 100
eod

ATTR: htrim-zone-size-check-interval
ATTRID: 109
ATTRHDRNAME: AO_DNSSERVER_HTRIM_ZONE_SIZE_CHECK_INTERVAL
ATTRTYPE: AT_RANGETIME(10-86400)
ATTRMCDPATH: htrim_zone_size_check_interval
ATTRDEFVAL: 300
ATTRVIZ: 3
ATTRDESC:: eod
Time interval in which to check the zone size and determine if
history trimming in required.  Default is 300 sec.

Validation: 10 <= x <= 86400
eod

ATTR: htrim-ddns-between-htrims
ATTRID: 110
ATTRHDRNAME: AO_DNSSERVER_HTRIM_DDNS_BETWEEN_HTRIMS
ATTRTYPE: AT_RANGEINT(10-10000)
ATTRMCDPATH: htrim_ddns_between_htrims
ATTRDEFVAL: 10
ATTRVIZ: 3
ATTRDESC:: eod
Number of DDNS updates to a zone between history trims.
Default is 100 updates.

Validation: 1 <= x <= 10000
eod

ATTR: htrim-zone-max-hist-allowed
ATTRID: 111
ATTRHDRNAME: AO_DNSSERVER_HTRIM_ZONE_MAX_HIST_ALLOWED
ATTRTYPE: AT_RANGEINT(1-100)
ATTRMCDPATH: htrim_zone_max_hist_allowed
ATTRDEFVAL: 5
ATTRVIZ: 3
ATTRDESC:: eod
The amount of history allowed as a multiple of the amount of
history kept for IXFR. Default is 5 times the amount of history kept.

Validation: 1 <= x <= 100
eod

ATTR: htrim-zone-seek-more-trim-interval
ATTRID: 112
ATTRHDRNAME: AO_DNSSERVER_HTRIM_ZONE_SEEK_MORE_TRIM_INTERVAL
ATTRTYPE: AT_RANGETIME(10-86400)
ATTRMCDPATH: htrim_zone_seek_more_trim_interval
ATTRDEFVAL: 300
ATTRVIZ: 3
ATTRDESC:: eod
The interval at which to seek out zones that can be candidates
for history trimming. Default is 300 sec.

Validation: 10 <= x <= 86400
eod

ATTR: zone-db-cache-kbytes
ATTRID: 113
ATTRHDRNAME: AO_DNSSERVER_ZONEDB_CACHE_KBYTES
ATTRTYPE: AT_INT
ATTRMCDPATH: zone_db_cache_kbytes
ATTRVIZ: 3
ATTRDEFVAL: 1024
ATTRDESC:: eod
Size (kbytes) of internal BTREE cache used by the ZONE DB. Note, 
this value will be rounded-up to the nearest 4 (kbyte) boundary. 
For example, a 81 (kbyte) value will be rounded up to 84 (kbytes).
Values below 36 (kbytes) will be ignored; 36 (kbytes) will be used
instead. Default is 1000 kbytes.
eod

ATTR: scvg-max-records
ATTRID: 114
ATTRHDRNAME: AO_DNSSERVER_SCVG_MAX_RECORDS
ATTRTYPE: AT_RANGEINT(1-10000)
ATTRMCDPATH: scvg_max_records
ATTRVIZ: 3
ATTRDEFVAL: 1000
ATTRDESC:: eod
The maximum number of records to the dns server will scavenge from
one zone during a scaveging interval when scavenging is enabled.

Validation: 1 <= x <= 10000
eod

ATTR: zone-checkpoint-file-buf-ksize
ATTRID: 115
ATTRHDRNAME: AO_DNSSERVER_CHECKPOINT_FILEBUF_SIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: zone_checkpoint_file_buf_ksize
ATTRVIZ: 3
ATTRDEFVAL: 256
ATTRDESC:: eod
The size (1K bytes) of the file IO buffer(s) used by the zone
checkpoint datastore when reading and writing a zone checkpoint
file.

Validation: 1 <= x <= 256
eod


ATTR: dns-health-monitor-level
ATTRID: 116
ATTRHDRNAME: AO_DNSSERVER_HEALTH_MONITOR
ATTRTYPE: AT_RANGEINT(0-1000)
ATTRMCDPATH: dns_health_monitor_level
DEPRECATED: 4.0
ATTRVIZ: 1
ATTRDEFVAL: 1
ATTRDESC:: eod

Specifies dns monitoring level. default 1 (on). Deprecated.

eod

ATTR: dns-health-monitor-interval
ATTRID: 117
ATTRHDRNAME: AO_DNSSERVER_HEALTH_MONITOR_INTERVAL
ATTRTYPE: AT_RANGEINT(300-86400)
ATTRMCDPATH: dns_health_monitor_interval
DEPRECATED: 4.0
ATTRVIZ: 1
ATTRDEFVAL: 1800
ATTRDESC:: eod

Specifies dns monitoring level. default 1800 seconds. Deprecated.

eod

ATTR: zone-blobs-read-per-mcd-xact
ATTRID: 118
ATTRHDRNAME: AO_DNSSERVER_ZONE_BLOBS_READ_PER_MCD_XACT
ATTRTYPE: AT_INT
ATTRMCDPATH: zone_blobs_read_per_mcd_xact
ATTRVIZ: 3
ATTRDEFVAL: 100
ATTRDESC:: eod
The number of zone blobs, stored in MCD Config and State, to read 
per a MCD transaction. A higher value yields greater server
configuration performance; however, a higher value requires more
heap space.

Validation: 1 <= x <= 1000
eod


ATTR: max-negcache-ttl
ATTRID: 119
ATTRHDRNAME: AO_DNSSERVER_MAXNEGCACHETTL
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRMCDPATH: max_negcache_ttl
ATTRVIZ: 5
ATTRDEFVAL: 3600
ATTRDESC:: eod
The upper bound, in seconds, for which negative cache entries will be
maintained by the DNS server.  These cache entries are generated after
querying other name servers and receiving an authoritative reply
stating the specified record does not exist.

Validation: 0 <= x <= 2147483647
eod

######################################################################
ATTR: tsig-processing
ATTRID: 120
ATTRTYPE: AT_FLAGSINT( ddns=1, query=2, disable-all=3 )
ATTRDEFVAL: ddns,query
ATTRMCDPATH: tsig_processing
ATTRVIZ: 3
ATTRDESC:: eod
Enables you to turn on and off tsig processing for DNS transactions.
Default is enabled on ddns and query requests.
eod

ATTR: zone-blobs-write-per-mcd-xact
ATTRID: 121
ATTRHDRNAME: AO_DNSSERVER_ZONE_BLOBS_WRITE_PER_MCD_XACT
ATTRTYPE: AT_INT
ATTRMCDPATH: zone_blobs_write_per_mcd_xact
ATTRVIZ: 3
ATTRDEFVAL: 100
ATTRDESC:: eod
The number of zone blobs to write to MCD state (during
configuration) per a MCD transaction. A higher value yields
greater server configuration performance; however, a higher 
value shall also block out the UI and/or other CNR servers 
(colocated on the same platform) from accessing MCD.

Validation: 1 <= x <= 1000
eod

ATTR: update-acl
ATTRID: 122
ATTRHDRNAME: AO_DNSSERVER_UPDATE_ACL
ATTRTYPE: AT_AMELST
ATTRMCDPATH: update-acl
ATTRVIZ: 5
ATTRDEFVAL: none
ATTRDESC:: eod
Global access control list (ACL) used to control DDNS updates
to the DNS server. Zones with the update-acl attribute unset 
will use this setting.
eod

ATTR: hierarchical-alphabetic-rr-ordering
ATTRID: 123
ATTRHDRNAME: AO_DNSSERVER_HIERARCHICAL_ALPHABETIC_RR_ORDERING
ATTRTYPE: AT_BOOL
ATTRMCDPATH: hierarchical_alphabetic_rr_ordering
ATTRVIZ: 3
ATTRDEFVAL: true
ATTRDESC:: eod
Specifies whether to order RRs, during zone iterations as used 
by the UIs, in a more user palatable form. Enabling this ordering
could affect server performance with respect to DDNS updates and
(inbound) zone transfers.

NOTE: altering this ordering scheme shall require a full reload
during the next server restart/startup, because the existing
AUTHZONE DB can not be used.
eod

ATTR: changeset-background-loading
ATTRID: 124
ATTRHDRNAME: AO_DNSSERVER_CHSET_BACKGROUND_LOADING
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: true
ATTRMCDPATH: chset_background_loading
ATTRVIZ: 3
ATTRDESC:: eod
Enable chsetdb background loading to improve reload performance.
eod


ATTR: key-blobs-read-per-xact
ATTRID: 125
ATTRHDRNAME: AO_DNSSERVER_KEY_BLOBS_READ_PER_XACT
ATTRTYPE: AT_INT
ATTRMCDPATH: key_blobs_read_per_xact
ATTRVIZ: 3
ATTRDEFVAL: 10
ATTRDESC:: eod
The number of key blobs read per transaction.
eod

ATTR: acl-blobs-read-per-xact
ATTRID: 126
ATTRHDRNAME: AO_DNSSERVER_ACL_BLOBS_READ_PER_XACT
ATTRTYPE: AT_INT
ATTRMCDPATH: acl_blobs_read_per_xact
ATTRVIZ: 3
ATTRDEFVAL: 10
ATTRDESC:: eod
The number of acl blobs read per transaction.
eod

ATTR: activity-summary-interval
ATTRID: 127
ATTRHDRNAME: AO_DNSSERVER_ACTIVITY_SUMMARY_PERIOD
ATTRTYPE: AT_RANGETIME(10-86400)
ATTRMCDPATH: activity_summary_interval
ATTRDEFVAL: 300
ATTRVIZ: 5
ATTRDESC:: eod
The time between dns activity summary log messages in seconds,
if activity-summary is enabled in the server log-settings.
The default value is 5 minutes.
Validation: 10 <= x <= 86400 (1 day)
eod

ATTR: activity-summary-settings
ATTRID: 128
ATTRHDRNAME: AO_DNSSERVER_ACTIVITY_SUMMARY_LOGSETTING
ATTRTYPE: AT_FLAGSINT( default=1,system=2,server=3, cache=4, chsetdb=5, chsetdb-details=6, performance=7)
ATTRDEFVAL: server,cache,chsetdb
ATTRMCDPATH: activity_summary_settings
ATTRFLAGS: AF_PRINT_ALT
ATTRVIZ: 3
ATTRDESC:: eod
The DNS server will log activity summary in different categories.
eod
VDESC::eod

The possible flags are:
  default
    Default categories.

  chsetdb
    This flag will cause the activity summary logging of changeset db related.

  chsetdb-details
    This flag will cause log chsetde details.

eod

ATTR: root-hints
ATTRID: 129
ATTRTYPE: AT_NLIST(AT_OBJ(AddrSet))
# 1<<16 | 50
ATTRVAL: 65586
ATTRFLAGS: AF_NOTREE
ATTRVIZ: 3
ATTRDESC:: eod
The root hints for this server
eod

ATTR: exceptions
ATTRID: 130
ATTRTYPE: AT_NLIST(AT_OBJ(AddrSet))
# 1<<16 | 50
ATTRVAL: 65586
ATTRFLAGS: AF_NOTREE
ATTRVIZ: 3
ATTRDESC:: eod
The resolution exception list for this server
eod

ATTR: forwarders
ATTRID: 131
ATTRTYPE: AT_NLIST(AT_IPADDR)
# AT_IPADDR = 4
ATTRVAL: 4
ATTRFLAGS: AF_NOTREE
ATTRVIZ: 3
ATTRDESC:: eod
The forwarders list for this server
eod

ATTR: foreign-servers
ATTRID: 132
ATTRTYPE: AT_NLIST(AT_OBJ(ForeignServer))
# 1<<16 | 100
ATTRVAL: 65636
ATTRFLAGS: AF_NOTREE
ATTRVIZ: 3
ATTRDESC:: eod
Information about the capabilities of remote dns servers that this
server might contact.
eod

ATTR: chset-db-lock-count
ATTRID: 133
ATTRHDRNAME: AO_DNSERVER_CHSET_DB_LOCK_COUNT
ATTRTYPE: AT_INT
ATTRMCDPATH: chset_db_lock_count
ATTRDEFVAL: 10000
ATTRVIZ: 3
ATTRDESC:: eod
The chset database must be configured with a lock count,
else the default of 10000 will be used. Set debug G=1, when
dns server does chsetdb log file trimming (csetdb_logs_trim_interval),
it will display the high water mark for locks used.

Validation: 1000 <= x <= 0xFFFFFFFF

eod

ATTR: full-reload-recovery-options
ATTRID: 134
ATTRHDRNAME: AO_DNSERVER_FULL_RELOAD_RECOVERY_OPTIONS
ATTRTYPE: AT_ENUMINT(abort-on-error=0, resume-roll-forward-on-err=1, remove-from-changeset-db=2, remove-dynamic-rrs=3) 
ATTRMCDPATH: full_reload_recovery_options
ATTRFLAGS: AF_PRINT_ALT
ATTRDEFVAL: abort-on-error
ATTRVIZ: 3
ATTRDESC:: eod
This defines the option to use during zones configuration. 
abort-on-error, the default, specifies that full zone reload
should abort when encountered an error (while rolling-forward
changesets on top of the zone checkpoint). resume-roll-forward-on-err
requests that the server should continue rolling forward a zone
eventhough there was an encountered error. remove-from-changeset-db
specifies that zone(s) should be removed from the changeset DB 
during server startup/reload; this option may result in the lost
of "recent" RRs. Last, remove-dynamic-rrs causes the server to
remove zones from both the checkpoint datastore and the 
changeset DB, causing all dynamic RRs to be lost (static RRs
shall be retained though).
eod


ATTR: serial-gap-commit-check     
ATTRID: 135
ATTRHDRNAME: AO_DNSSERVER_SERIAL_GAP_COMMIT_CHECK
ATTRTYPE: AT_BOOL
ATTRDEFVAL: false
ATTRMCDPATH: serial_gap_commit_check
ATTRVIZ: 1
ATTRDESC:: eod
Set TRUE to enable checking serial gap during commitment. 
Used for internal debug only.
eod

ATTR: restrict-xfer-acl
ATTRID: 136
ATTRHDRNAME: AO_DNSSERVER_RESTRICT_XFER_ACL
ATTRTYPE: AT_AMELST
ATTRMCDPATH: restrict_xfer_acl
ATTRVIZ: 5
ATTRDEFVAL: none
ATTRDESC:: eod
The default access control list that designates who is allowed to 
receive zone transfers. Setting the restrict-xfer-acl on a zone
overrides this setting.
eod

ATTR: tsig-every-n-pkts
ATTRID: 137
ATTRHDRNAME: AO_DNSSERVER_TSIG_EVERY_N_PKTS
ATTRTYPE: AT_RANGEINT(1-100)
ATTRMCDPATH: tsig_every_n_pkts 
ATTRDEFVAL: 100
ATTRVIZ: 3
ATTRDESC:: eod
While send a TCP zone transfer, the dns server will insert a TSIG
record at this interval.

Validation: 1 <= x <= 100
eod


ATTR: activity-sample-interval
ATTRID: 138
ATTRHDRNAME: AO_DNSSERVER_ACTIVITY_SAMPLE_INTERVAL
ATTRTYPE: AT_RANGETIME(60-86400)
ATTRMCDPATH: activity_sample_interval
ATTRDEFVAL: 300
ATTRVIZ: 1
ATTRDESC:: eod
The sampling period of dns activity counters, in seconds.
It will be rounded to minutes internally.
The default value is 5 minutes.
Validation: 60 <= x <= 86400 (1 day)
eod


ATTR: scp-skip-authenticate
ATTRID: 139
ATTRHDRNAME: AO_DNSSERVER_SCP_SKIP_AUTHENTICATE
ATTRTYPE: AT_BOOL
ATTRMCDPATH: scp_skip_authenticate
ATTRDEFVAL: false
ATTRVIZ: 1
ATTRDESC:: eod
Instructs the SCP handler to skip the authenticate process. This
attribute should generally be set for new SCP message(s) development.
It should, otherwise, be set as false. It's purpose is to serve as a
development debugging aid.
eod


ATTR: collect-sample-counters
ATTRID: 140
ATTRHDRNAME: AO_DNSSERVER_COLLECT_SAMPLE_COUNTERS
ATTRTYPE: AT_BOOL
ATTRMCDPATH: collect_sample_counters
ATTRDEFVAL: true
ATTRVIZ: 5
ATTRDESC:: eod
Switch to turn on/off counter sampling.
eod


ATTR: activity-counter-log-settings
ATTRID: 141
ATTRHDRNAME: AO_DNSSERVER_ACTIVITY_COUNTER_LOG_SETTINGS
ATTRTYPE: AT_FLAGSINT( total=1,sample=2,performance=3,query=4, errors=5, security=6, maxcounters=7)
ATTRDEFVAL: total,performance,query,errors,security
ATTRMCDPATH: activity_counter_log_settings
ATTRFLAGS: AF_PRINT_ALT
ATTRVIZ: 5
ATTRDESC:: eod
Log DNS server activity counters in different categories.
eod
VDESC::eod

The possible flags are:
  total
    Flag to log the accumulated counters since reset or server start.

  sample
    Flag to log  the sampled counters.

  performance
    This flag will cause log performance-related counters details.

  query
    This flag will cause log query-related counters details.

  errors
    This flag will cause log error-related counters details.

  security
    This flag will cause log security-related counters details.

  maxcounters
    This flag will cause log maxcounters-related counters details.

eod

ATTR: activity-counter-interval
ATTRID: 142
ATTRHDRNAME: AO_DNSSERVER_ACTIVITY_COUNTER_INTERVAL
ATTRTYPE: AT_RANGETIME(10-86400)
ATTRMCDPATH: activity_counter_interval
ATTRDEFVAL: 300
ATTRVIZ: 5
ATTRDESC:: eod
The sample time interval of server counters.
The 'collect-sample-counters' must be set to 'true' to start sampling.
The default value is 5 minutes.
Validation: 10 <= x <= 86400 (1 day)
eod

ATTR: delegation-only-domains
ATTRID: 143
ATTRHDRNAME: AO_DNSSERVER_DELEGATION_ONLY_DOMAINS
ATTRTYPE: AT_NLIST(AT_DNSNAME)
# AT_DNSNAME = 35
ATTRVAL: 35
ATTRMCDPATH: delegation_only_domains
ATTRVIZ: 5
ATTRDESC:: eod
This defines a list of domains that should be delegation-only.  This
means that, other than records at the domain name itself, the only
records in the zone should be NS and glue A records delegating
sub-zones.  "com." is an example of a domain that should contain only
delegations.  The server will enforce the delegation-only nature of
the domains on this list when examining responses that are not from a
forwarder or resolution exception server, and will convert
non-conforming answers to no-such-name responses.  This cannot be
enforced when the answer comes from a forwarder.
eod

ATTR: restrict-query-acl
ATTRID: 144
ATTRHDRNAME: AO_DNSSERVER_RESTRICT_QUERY_ACL
ATTRTYPE: AT_AMELST
ATTRDEFVAL: any
ATTRMCDPATH: restrict_query_acl
ATTRVIZ: 5
ATTRDESC:: eod
Global Access Control List (ACL) used to restrict queries to be 
honored by the DNS server. This list can contain host, network
addresses, TSIG keys and/or (global) ACLs that restrict queries 
to a certain set of DNS clients.  Default is to allow-all to query. 
Zones inherit this ACL if they are missing their restrict-query-acl. 
This ACL also serves as filtering queries for non-authoritative zones.
eod

ATTR: requery-over-tcp
ATTRID: 145
ATTRHDRNAME: AO_DNSSERVER_REQUERY_OVER_TCP
ATTRTYPE: AT_BOOL
ATTRDEFVAL: true
ATTRVIZ: 3
ATTRDESC:: eod
Controls whether or not the DNS server will retry querying an
authoritative server or forwarder after having received a
truncated answer over UDP.
eod

ATTR: oldzonestate-max-records
ATTRID: 146
ATTRHDRNAME: AO_DNSSERVER_OLDZONESTATE_MAX_RECORDS
ATTRTYPE: AT_RANGEINT(1-10000)
ATTRMCDPATH: oldzonestate_max_records
ATTRVIZ: 3
ATTRDEFVAL: 1000
ATTRDESC:: eod
The maximum number of old zone state records the dns server will
remove from a zone during an interval when cleaning up old zone state.

Validation: 1 <= x <= 10000
eod

ATTR: oldzonestate-pause-interval
ATTRID: 147
ATTRHDRNAME: AO_DNSSERVER_OLDZONESTATE_PAUSE_INTERVAL
ATTRTYPE: AT_RANGETIME(1-86400)
ATTRMCDPATH: oldzonestate_pause_interval
ATTRVIZ: 3
ATTRDEFVAL: 10
ATTRDESC:: eod
The amount of time (in seconds) that old zone state cleanup will wait
after removing a set of records, before going onto the next set.

Validation: 1 <= x <= 86400
eod

ATTR: default-negcache-ttl
ATTRID: 148
ATTRHDRNAME: AO_DNSSERVER_DEFAULT_NEGCACHE_TTL
ATTRTYPE: AT_RANGETIME(0-86400)
ATTRMCDPATH: default_negcache_ttl
ATTRDEFVAL: 0
ATTRDESC:: eod
The amount of time (in seconds) that negative answers will be cached
if there is no SOA record in the authority section of the reply.  The
presence of an SOA record in the authority section of a negative
answer will override this attribute value.  For more detail, reference
IETF RFC2308.

Validation: 0 <= x <= 86400
eod

ATTR: restrict-recursion-acl
ATTRID: 149
ATTRHDRNAME: AO_DNSSERVER_RESTRICT_RECURSION_ACL
ATTRTYPE: AT_AMELST
ATTRDEFVAL: any
ATTRMCDPATH: restrict_recursion_acl
ATTRDESC:: eod
Global Access Control List (ACL) used to restrict recursive queries
to be honored by the DNS server. This list can contain host, network
addresses, TSIG keys and/or (global) ACLs that restrict recursive
queries to a certain set of DNS clients.  Default is to allow-all. For
any client not passing this ACL and requesting a recursive query, the
server responds with a referal - as if originally requested with an
iterative query.
eod


ATTR: persist-mem-cache
ATTRID: 150
ATTRHDRNAME: AO_DNSSERVER_PERSIST_MEM_CACHE
ATTRTYPE: AT_BOOL
ATTRDEFVAL: true
ATTRVIZ: 5
ATTRDESC:: eod
Specifies whether the DNS server should read/write records, stored in the
server's in-memory cache, from/to the persistent cache-db. 
If it is FALSE, no mem-cache will be read/write to the persistent cache-db.
eod

ATTR: max-dns-packets
ATTRID: 151
ATTRHDRNAME: AO_DNSSERVER_MAX_DNS_PACKETS
ATTRTYPE: AT_INT
ATTRDEFVAL: 500
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the maximum number of packets that dns server will handle 
concurrently. DNS server will drop inbound packets if this limit
is reached.
eod

ATTR: request-retry-time
ATTRID: 152
ATTRHDRNAME: AO_DNSSERVER_REQUEST_RETRY_TIME
ATTRTYPE: AT_RANGETIME(1-30)
ATTRDEFVAL: 4
ATTRMCDPATH: request_retry_time
ATTRVIZ: 5
ATTRDESC:: eod
Dictates the retry time interval (in secs) when querying a name 
server. This time interval is used in general queries - in 
response to DNS clients queries - (zone transfers) SOA queries, 
IXFR requests and notify requests. Note, this is a minium retry 
time. The server applies an exponential backoff on retries. 
eod

ATTR: request-expiration-time
ATTRID: 153
ATTRHDRNAME: AO_DNSSERVER_REQUEST_EXPIRATION_TIME
ATTRTYPE: AT_RANGETIME(10-300)
ATTRDEFVAL: 90
ATTRMCDPATH: request_expiration_time
ATTRVIZ: 5
ATTRDESC:: eod
Governs the expiration time of a DNS request (e.g. DNS query, 
zone transfer SOA query, IXFR request and notify request). A 
request, which the server has not received a response within 
this time interval, is expired. Note, as a recommendation,
this value should be considerably larger than 'request-retry-time'
in order to allow multiple attempts on multiple server, using
exponential backoff.
eod

ATTR: forward-retry-time
ATTRID: 154
ATTRHDRNAME: AO_DNSSERVER_FORWARD_RETRY_TIME
ATTRTYPE: AT_RANGETIME(1-30)
ATTRDEFVAL: 8
ATTRMCDPATH: forward_retry_time
ATTRVIZ: 5
ATTRDESC:: eod
Pertains to forwarding a DNS query to a forwarder or resolution 
exception server. These queries are recursive, and may require 
more time for the forwarder to resolve. To ensure that all 
forwarders are attempted, this value, as a recommendation, 
should be set to 'request-expiration-time'/(N-1) (where N equals 
the total number of configured forwarders). Note, this attribute 
has no relevance when slave-mode is enabled; 
slave-forward-retry-time is used instead.
eod

ATTR: tcp-query-retry-time
ATTRID: 155
ATTRHDRNAME: AO_DNSSERVER_TCP_QUERY_RETRY_TIME
ATTRTYPE: AT_RANGETIME(10-300)
ATTRDEFVAL: 10
ATTRMCDPATH: tcp_query_retry_time
ATTRVIZ: 5
ATTRDESC:: eod
Defines the retry time for DNS queries over a TCP connection. As a 
recommendation, this value should be less than 
'request-expiration-time'.
eod

ATTR: slave-forward-retry-time
ATTRID: 156
ATTRHDRNAME: AO_DNSSERVER_SLAVE_FORWARD_RETRY_TIME
ATTRTYPE: AT_RANGETIME(5-60)
ATTRDEFVAL: 30
ATTRMCDPATH: slave_forward_retry_time
ATTRVIZ: 5
ATTRDESC:: eod
Pertains to forwarding a DNS query in slave-mode. These queries 
are recursive, and may require more time for the forwarder to 
resolve. To ensure that all forwarders are attempted, this value, 
as a recommendation, should be set to 'request-expiration-time'/(N-1) 
(where N equals the total number of configured forwarders). Note
this attribute has no relevance when slave-mode is disabled; instead,
forward-retry-time is used.
eod

ATTR: resolution-queue-max-size
ATTRID: 157
ATTRTYPE: AT_RANGEINT(10-50000)
ATTRVIZ: 3
ATTRDEFVAL: 1000
ATTRDESC:: eod
This value will imposes a maximum limit of queries on the outgoing queue.
However this maximum does not apply for zone xfer requests, notify requests
and root primings.
eod

# END OF DNS CLASS

CLASS: Zone
CLASSROOT: ZONE
CLASSID: 1201
CLASSNAME: 1
CLASSNAMEDESC:: eod
The name of Zone objects is the origin of the zone. Zone objects
cannot be renamed.
eod
CLASSVIZ: 5
CLASSDESC:: eod
The DNS Zone configuration object
eod

ATTR: origin
ATTRID: 1
ATTRHDRNAME: AO_ZONE_ORIGIN
ATTRTYPE: AT_DNSNAME
ATTRMCDPATH: name
ATTRFLAGS: AF_REQUIRED, AF_IMMUTABLE, AF_UNIQUE
ATTRVIZ: 5
ATTRDESC:: eod
The fully-qualified name of the zone's root.  The zone name.
eod

ATTR: type
ATTRID: 2
ATTRHDRNAME: AO_ZONE_TYPE
ATTRTYPE: AT_ENUMSTR(primary, secondary)
ATTRMCDPATH: type
ATTRFLAGS: AF_REQUIRED, AF_IMMUTABLE
ATTRVIZ: 5
ATTRDESC:: eod
The type of role the server should take on for this zone.
Usually you only configure one server as primary for a zone,
and configure several secondary servers that will retrieve
zone data through zone transfers.
eod

ATTR: records
ATTRID: 3
ATTRHDRNAME: AO_ZONE_RECORDS
ATTRTYPE: AT_NLIST(AT_OBJ(RRSet))
# 1<<16 | 1206
ATTRVAL: 66742
ATTRMCDPATH: records
ATTRFEAT: (type == primary)
ATTRVIZ: 1
ATTRDESC:: eod
Kept in case we shift to a single-object encoding scheme
for zones with a small number of RRs.
eod

ATTR: state-records
ATTRID: 4
ATTRHDRNAME: AO_ZONE_STATE_RECORDS
ATTRTYPE: AT_NLIST(RRSet)
# 1<<16 | 1206
ATTRVAL: 66742
ATTRMCDPATH: state-records
ATTRVIZ: 3
ATTRDESC:: eod
Resource records received through dynamic update (for primary zones)
or zone transfer (for secondary zones).
eod

ATTR: server
ATTRID: 5
ATTRHDRNAME: AO_ZONE_SERVER
ATTRTYPE: AT_NAMEREF(DNSServer)
ATTRVAL: 1200
ATTRMCDPATH: server
ATTRVIZ: 1
ATTRDESC:: eod
The name of the DNS server for this zone, but since this
is a local Zone object there can only be one DNS server
for it -- the DNS server on this local cluster.

See the CCMZoneDistribution and CCMZone objects
for the current mechanism for mapping zones to
servers.
eod

ATTR: restrict-xfer
ATTRID: 6
ATTRHDRNAME: AO_ZONE_RESTRICT_XFER
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRMCDPATH: restrict_xfer
ATTRVIZ: 5
ATTRDESC:: eod
Restricts sending zone transfers to a specific set of hosts. If you
restrict zone transfers, you need to use the restrict-xfer-acl
access control property to designate who is allowed to perform zone
transfers.
eod

ATTR: dynamic
ATTRID: 7
ATTRHDRNAME: AO_ZONE_ENABLE_UPDATES
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: true
ATTRMCDPATH: enable_updates
ATTRFEAT: (type == primary)
ATTRVIZ: 5
ATTRDESC:: eod
Enables RFC 2136 dynamic updates to the zone.  The most typical source
of these updates is a DHCP server. The UIs also need this attribute 
enabled in order to allow dynamic updates on the zone. Defaults to 
enabled.
eod

ATTR: restricted-set
VATTR: restricted-set
ATTRID: 8
ATTRHDRNAME: AO_ZONE_RESTRICTED_SET
ATTRTYPE: AT_NLIST(AT_IPADDR)
# AT_IPADDR = 4
ATTRVAL: 4
VTYPE: AT_SET(AT_IPADDR)
ATTRMCDPATH: restricted_set
# Is this really required?  -as 5/25/02 (Zone.restricted-set)
#ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 0
ATTRFEAT: 6
ATTRVIZ: 1
DEPRECATED: 5.0
ATTRDESC:: eod
The set of IP addresses which may request zone transfers,
when "restrict-xfer" is enabled.  Addresses with zeros in the
least significant octets are treated as network numbers,
with implicit masks in octet multiples.
eod

ATTR: dynupdate-set
ATTRID: 9
ATTRHDRNAME: AO_ZONE_DYNUPDATE_SET
ATTRTYPE: AT_NLIST(AT_IPADDR)
# AT_IPADDR = 4
ATTRVAL: 4
ATTRMCDPATH: dyn_update_set
ATTRDEFVAL: 0
ATTRVIZ: 1
DEPRECATED: 4.0
ATTRDESC:: eod
The set of IP addresses from which dynamic updates will be accepted,
when "dynamic" is enabled.  Addresses with zeros in the least
significant octets are treated as network numbers, with implicit
masks in octet multiples.
eod

ATTR: ixfr
ATTRID: 10
ATTRHDRNAME: AO_ZONE_IXFR_ENABLE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: ixfr_enable
ATTRFEAT: (type == secondary)
ATTRVIZ: 5
ATTRDESC:: eod
Enables requesting incremental transfer for this zone.  When set, to
either true or false, it overrides the global "ixfr-enable" value
for this zone.

If you set incremental transfers, then this particular zone
will act differently than zones inheriting the server global value.

If you unset incremental transfers, Network Registrar uses the
server global ixfr value (and the operation of the GUI specifically
depends on this, since it has no way of setting this per-zone
feature).

Using the server global value (not setting this value per-zone)
gives the you an easy way of globally turning ixfr on or off,
or setting a general policy for your zones and specific exceptions
to the server global value.
eod

ATTR: notify
ATTRID: 11
ATTRHDRNAME: AO_ZONE_NOTIFY_ENABLE
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: notify_enable
ATTRVIZ: 5
ATTRDESC:: eod
Enables notification of other authoritative servers when this
zone changes.  When set, to either true or false, it overrides the
global "notify" value for this zone.
eod

ATTR: notify-set
VATTR: notify-set
ATTRID: 12
ATTRHDRNAME: AO_ZONE_NOTIFY_LIST
ATTRTYPE: AT_NLIST(AT_IPADDR)
# AT_IPADDR = 4
ATTRVAL: 4
VTYPE: AT_SET(IPAddr)
ATTRMCDPATH: notify_list
ATTRFEAT: 11
ATTRVIZ: 5
ATTRDESC:: eod
An optional list of additional servers to notify when this zone
changes.  All servers listed in NS records for the zone, with the
exception of the server described by the "ns" property of the zone
(the mname field of the SOA record) will receive notifications.
Servers listed in "notify-list" will also be notified.

Validation: Standard host IP address requirements.
eod

# START experimental native attributes for values stored in SOA and NS
#       records

ATTR: x-serial
ATTRID: 21
ATTRVIZ: 2
ATTRFLAGS: AF_IMMUTABLE
ATTRHDRNAME: AO_ZONE_SERIAL
ATTRTYPE: AT_INT
ATTRVIZ: 1

ATTR: x-fixname
ATTRID: 22
ATTRVIZ: 2
ATTRFLAGS: AF_IMMUTABLE
ATTRHDRNAME: AO_ZONE_FIXNAME
ATTRTYPE: AT_DNSNAME
ATTRVIZ: 1

ATTR: x-name
ATTRID: 23
ATTRVIZ: 2
ATTRFLAGS: AF_IMMUTABLE
ATTRHDRNAME: AO_ZONE_NAME
ATTRTYPE: AT_DNSNAME
ATTRVIZ: 1

ATTR: x-dbidx
ATTRID: 24
ATTRVIZ: 2
ATTRFLAGS: AF_IMMUTABLE
ATTRHDRNAME: AO_ZONE_DBIDX
ATTRTYPE: AT_INT
ATTRVIZ: 1

# END experimental native attributes for values stored in SOA and NS

# soa values
#

ATTR: ns
ATTRID: 25
ATTRTYPE: AT_DNSNAME
ATTRVIZ: 1
ATTRDESC:: eod
The fully-qualified domain name of the primary name server for this
zone. This host is the original or primary source of data for this 
zone.
eod

ATTR: person
ATTRID: 26
ATTRTYPE: AT_DNSNAME
ATTRVIZ: 1
ATTRDESC:: eod
A domain name which specifies the mailbox of the person
responsible for this zone.  The first label is a user or mail
alias, the rest of the labels are a mail destination.  A mailbox
of hostmaster@test.com would be represented as hostmaster.test.com.
eod

ATTR: refresh
ATTRID: 27
ATTRTYPE: AT_RANGETIME(1-2147483647)
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 3h
ATTRVIZ: 1
ATTRDESC:: eod
The refresh interval, in seconds, of the zone. Used by secondaries
as the period of polling for zone changes.

Validation: 1 <= x <= 2147483647
eod

ATTR: retry
ATTRID: 28
ATTRTYPE: AT_RANGETIME(1-2147483647)
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 1h
ATTRVIZ: 1
ATTRDESC:: eod
The retry interval, in seconds, of the zone.  Used by secondaries
as the period of retrying when polling for changes, or attempting
zone transfer encounters errors.

Validation: <  (expire - refresh)
eod

ATTR: expire
ATTRID: 29
ATTRTYPE: AT_RANGETIME(1-2147483647)
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 1w
ATTRVIZ: 1
ATTRDESC:: eod
The expire interval, in seconds, of the zone.  The length of
time a secondary can continue to serve zone data without
confirmation that it is still current.

Validation: refresh < x < 2147483647
eod

ATTR: minttl
ATTRID: 30
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: 10m
ATTRVIZ: 1
ATTRDESC:: eod
The minimum TTL value to expose in resource records for this zone.
Records with lower TTL values will be published with this value.

Validation: 0 <= x <= 2147483647
eod

ATTR: nameservers
ATTRID: 31
ATTRTYPE: AT_NLIST(AT_DNSNAME)
# AT_DNSNAME = 35
ATTRVAL: 35
ATTRDESC:: eod
The list of nameservers for this zone.
eod


ATTR: auth-servers
VATTR: auth-servers
ATTRID: 101
ATTRHDRNAME: AO_ZONE_AUTH_SERVERS
ATTRTYPE: AT_NLIST(AT_IPADDR)
# AT_IPADDR = 4
ATTRVAL: 4
VTYPE: AT_SET(AT_IPADDR)
ATTRMCDPATH: value/server_set
# Is this really required?  -as 5/25/02 (Zone.auth-servers)
# Yes, this is required. All secondaries must have this - 8/21/02 (jjc)
# But it is not required for primary zones, so the AF_REQUIRED is too strict
# ATTRFLAGS: AF_REQUIRED
ATTRFEAT: (type == secondary)
DEPRECATED: 5.0
ATTRVIZ: 1
ATTRDESC:: eod
The is the list of servers from which we will transfer data
for this secondary zone.

Validation: Standard host IP address requirements.
eod

ATTR: soattl
ATTRID: 32
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRVIZ: 3
ATTRDESC:: eod
The ttl value to be applied to the zone's SOA rr.
eod

ATTR: nsttl
ATTRID: 33
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRVIZ: 3
ATTRDESC:: eod
The ttl value to be applied to the zone's NS rrs.
eod

ATTR: defttl
ATTRID: 102
ATTRHDRNAME: AO_ZONE_DEFTTL
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRMCDPATH: defttl
ATTRFEAT: (type == primary)
ATTRFLAGS: AF_REQUIRED
ATTRVIZ: 5
ATTRDEFVAL: 86400
ATTRDESC:: eod
The default TTL value to be used in resource records for this zone
which do not specify a TTL.

Validation: 0 <= x <= 2147483647
eod

ATTR: checkpoint-interval
ATTRID: 103
ATTRHDRNAME: AO_ZONE_CHECKPOINT_INTERVAL
ATTRTYPE: AT_RANGETIME(3600-604800)
ATTRMCDPATH: checkpoint_interval
ATTRVIZ: 5
ATTRDESC:: eod
The interval (in seconds) to checkpoint the zone. This defines how
often the latest zone snapshot is recorded in the Zone Checkpoint DB.

Validation: 1 hour (3600 seconds) <= x <= 168 hours (604800 seconds)
eod

ATTR: scvg-enabled
ATTRID: 104
ATTRHDRNAME: AO_ZONE_SCAVENGE_ENABLED
ATTRTYPE: AT_BOOL
ATTRMCDPATH: scvg_enabled
ATTRDEFVAL: 0
ATTRFEAT: (type == primary)
ATTRVIZ: 5
ATTRDEFVAL: false
ATTRDESC:: eod
Enables dynamic resource-record scavenging for the zone.
eod

ATTR: scvg-interval
ATTRID: 105
ATTRHDRNAME: AO_ZONE_SCAVENGE_INTERVAL
ATTRTYPE: AT_RANGETIME(3600-31536000)
ATTRMCDPATH: scvg_interval
ATTRFEAT: (type == primary)
ATTRVIZ: 5
ATTRDESC:: eod
The interval (in seconds) to schedule scavenging on the zone.

Validation: 3600 <= x <= 31536000
eod

ATTR: scvg-no-refresh-interval
ATTRID: 106
ATTRHDRNAME: AO_ZONE_SCAVENGE_NO_REFRESH_INTERVAL
ATTRTYPE: AT_RANGETIME(3600-31536000)
ATTRMCDPATH: scvg_no_refresh_interval
ATTRFEAT: (type == primary)
ATTRVIZ: 5
ATTRDESC:: eod
The interval (in seconds) in which the zone cannot have a 
timestamp updated if it is to be scavenged.

Validation: 3600 <= x <= 31536000
eod

ATTR: scvg-refresh-interval
ATTRID: 107
ATTRHDRNAME: AO_ZONE_SCAVENGE_REFRESH_INTERVAL
ATTRTYPE: AT_RANGETIME(3600-31536000)
ATTRMCDPATH: scvg_refresh_interval
ATTRFEAT: (type == primary)
ATTRVIZ: 5
ATTRDESC:: eod
The interval (in seconds) in which the zone can have a timestamp 
updated.

Validation: 3600 <= x <= 31536000
eod

ATTR: scvg-max-records-searched
ATTRID: 108
ATTRHDRNAME: AO_ZONE_SCAVENGE_MAX_RECORDS_SEARCHED
ATTRTYPE: AT_RANGEINT(1-2000000000)
ATTRMCDPATH: scvg_max_records_searched
ATTRFEAT: (type == primary)
ATTRVIZ: 3
ATTRDESC:: eod
The maximum number of records to search at one time for
candidates to be scavenged.

Validation: 1 <= x <= 10000
eod

ATTR: scvg-ignore-restart-interval
ATTRID: 109
ATTRHDRNAME: AO_ZONE_SCAVENGE_IGNORE_RESTART_INTERVAL
ATTRTYPE: AT_RANGETIME(7200-86400)
ATTRMCDPATH: scvg_ignore_restart_interval
ATTRFEAT: (type == primary)
ATTRVIZ: 5
ATTRDESC:: eod
The interval (in seconds) for which a restart will not recalculate
a start scavenging time.

Validation: 7200 <= x <= 86400
eod

ATTR: scvg-pause-interval
ATTRID: 110
ATTRHDRNAME: AO_ZONE_SCAVENGE_PAUSE_INTERVAL
ATTRTYPE: AT_RANGETIME(1-86400)
ATTRMCDPATH: scvg_pause_interval
ATTRFEAT: (type == primary)
ATTRVIZ: 3
ATTRDESC:: eod
The interval (in seconds) that scavenging will wait after
scavenging a set of records, before going onto the next set.

Validation: 1 <= x <= 86400
eod


ATTR: checkpoint-min-interval
ATTRID: 111
ATTRHDRNAME: AO_ZONE_CHECKPOINT_MIN_INTERVAL
ATTRTYPE: AT_RANGETIME(60-2700)
ATTRMCDPATH: checkpoint_min_interval
ATTRVIZ: 3
ATTRDESC:: eod
The minimum amount of time required (in seconds) between the time
the first checkpoint occurs and the second checkpoint starts.
This attribute applies only to zones with dynamic rrs.

Validation: 60 <= x <= 2700
eod

ATTR: scvg-max-records
ATTRID: 112
ATTRHDRNAME: AO_ZONE_SCAVENGE_MAX_RECORDS
ATTRTYPE: AT_RANGEINT(1-10000)
ATTRMCDPATH: scvg_max_records
ATTRFEAT: (type == primary)
ATTRVIZ: 3
ATTRDESC:: eod
The maximum number of records to be scavenged from the zone during a 
scavenging interval.

Validation: 1 <= x <= 10000
eod

ATTR: MajorSerialNumber
ATTRID: 113
ATTRHDRNAME: AO_ZONE_MAJOR_NUMBER
ATTRTYPE: AT_INT
ATTRMCDPATH: MajorSerialNumber
ATTRVIZ: 3
ATTRDESC:: eod
Unique major version number of the zone. Indicates whether a zone has
been deleted and re-added.
eod

ATTR: MinorSerialNumber
ATTRID: 114
ATTRHDRNAME: AO_ZONE_MINOR_NUMBER
ATTRTYPE: AT_INT
ATTRMCDPATH: MinorSerialNumber
ATTRVIZ: 3
ATTRDESC:: eod

As the zone's minor version number, used to convey if some kind of
admin change (to the zone attributes and/or zone's RR composition)
has been applied on the zone. UI must increment this value when the
zone has been modified, causing the server to apply an incremental
load of the zone.
eod

ATTR: ZoneSerial
ATTRID: 115
ATTRHDRNAME: AO_ZONE_CONFIG_SERIAL
ATTRTYPE: AT_INT
ATTRMCDPATH: ZoneSerial
ATTRVIZ: 3
ATTRDESC:: eod
Administratively specified serial number. Note that the serial number 
must never regress; hence, this serial number is only accepted only  
if it is more advanced than the actual (dynamic) serial number.
eod

ATTR: TableGenNumber
ATTRID: 116
ATTRHDRNAME: AO_ZONE_TABLE_GENNUM
ATTRTYPE: AT_INT
ATTRMCDPATH: TableGenNumber
ATTRVIZ: 3
ATTRDESC:: eod
The current MCD RR table generation number for this zones
configuration rrs.
eod

ATTR: update-acl
ATTRID: 117
ATTRHDRNAME: AO_ZONE_UPDATE_ACL
ATTRTYPE: AT_AMELST
ATTRMCDPATH: update-acl
ATTRVIZ: 5
ATTRDESC:: eod
The access control list for DNS updates to the zone, specified as an
address match element list. The access control list is not applied
to dynamic updates coming from the UIs. Updates from the UIs are 
always allowed as long as the zone attribute dynamic is enabled. 
eod

ATTR: subzone-forward
ATTRID: 118
ATTRHDRNAME: AO_ZONE_SUBZONE_FORWARD
ATTRTYPE: AT_ENUMINT(normal=0, no-forward=1)
ATTRFLAGS: AF_PRINT_ALT
ATTRVIZ: 5
ATTRDEFVAL: normal
ATTRDESC:: eod
Specifies whether subzones use forwarders or not. When no-forward is 
set, any query for the zone will not be sent to the forwarder. This 
is an extended resolution exception.
eod

ATTR: full-reload-recovery-options
ATTRID: 119
ATTRHDRNAME: AO_ZONE_FULL_RELOAD_RECOVERY_OPTIONS
ATTRTYPE: AT_ENUMINT(abort-on-error=0, resume-roll-forward-on-err=1, remove-from-changeset-db=2, remove-dynamic-rrs=3) 
ATTRMCDPATH: full_reload_recovery_options
ATTRFLAGS: AF_PRINT_ALT
ATTRVIZ: 3
ATTRDESC:: eod
This defines the option to use during zone configuration. 
This option overrides the corresponding server level option.
abort-on-error, the default, specifies that full zone reload
should abort when encountered an error (while rolling-forward
changesets on top of the zone checkpoint). resume-roll-forward-on-err
requests that the server should continue rolling forward the zone
eventhough there was an encountered error(s). remove-from-changeset-db
specifies that the zone should be removed from the changeset DB 
during server startup/reload; this option may result in the lost
of "recent" RRs. Last, remove-dynamic-rrs causes the server to
remove the zone from both the checkpoint datastore and the 
changeset DB, causing all dynamic RRs to be lost (static RRs
shall be retained though).
eod

ATTR: restrict-xfer-acl
ATTRID: 120
ATTRHDRNAME: AO_ZONE_RESTRICT_XFER_ACL
ATTRTYPE: AT_AMELST
ATTRMCDPATH: restrict_xfer_acl
ATTRVIZ: 5
ATTRDESC:: eod
The access control list that designates who is allowed to receive
zone transfers from this zone. 
eod

ATTR: master-servers
ATTRID: 121
ATTRHDRNAME: AO_ZONE_MASTER_SERVERS
ATTRTYPE: AT_NLIST(AT_IPKEY)
# AT_IPKEY = 56
ATTRVAL: 56
ATTRMCDPATH: master_servers
ATTRFEAT: (type == secondary)
ATTRVIZ: 5
ATTRDESC:: eod
The is the list of servers from which we will transfer data
for this secondary zone. Each server ip can be followed with
an optional key name in order to configure secure zone transfers.

Validation: A list of one or more ip addresses with an optional
key name.
eod

ATTR: upgrade-version
ATTRID: 122
ATTRHDRNAME: AO_ZONE_UPGRADE_VERSION
ATTRTYPE: AT_INT
ATTRMCDPATH: upgrade_version
ATTRVIZ: 3
ATTRDESC:: eod
Used to support DB upgrades. Records the latest (config DB)
upgrade version - to determine synchronicity with config DB.
eod

ATTR: restrict-query-acl
ATTRID: 123
ATTRHDRNAME: AO_ZONE_RESTRICT_QUERY_ACL
ATTRTYPE: AT_AMELST
ATTRMCDPATH: restrict_query_acl
ATTRVIZ: 5
ATTRDESC:: eod
Zone Access Control List (ACL) used to restrict queries to be
honor by the DNS server on this zone. This list can contain host 
IPs, network addresses, TSIG keys and/or (global) ACLs. Those 
clients defined in this ACL list shall be honored; others shall 
be refused. If missing, the zone inherits the global 
restrict-query-acl value from the server configuration.
eod
#end of class zone

###
# Resource record validation
#
# The validation of resource records is a bit complex.  Each type has its own
# validation requirements.
# Between types the following rules apply:
#
# - No name may have a CNAME record and any other record, including another
# CNAME record.
# - No name may have multiple records with identical type and data (record
# equality is determined based on record-specific rules, generally based on
# the presence of names in the record which must have case-insensitive
# comparisons.)
# - SOA records may not appear except at the zone origin.
# - Records must not appear at or beneath subzone delegations (which are
# indicated by the presence of an NS record at a name other than the zone
# origin), except glue A records which are required by the parent zone for
# locating subzone name servers.
# - Multiple WKS records may not co-exist on a name with identical "address"
# and "protocol" fields (first 6 octets).
# - A zone may not contain records which are outside the zone.
#

CLASS: ResourceRecord
CLASSROOT: RESOURCERECORD
CLASSID: 1202
CLASSNAME: 1
CLASSVIZ: 1
CLASSNAMEDESC:: eod
The name of ResourceRecord objects is the name of the resource record.
ResourceRecord objects cannot be renamed.
eod
CLASSDESC:: eod
A DNS resource record
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_RESOURCERECORD_NAME
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED
ATTRVIZ: 3
ATTRDESC:: eod
The resource record's domain name (owner name).
eod

ATTR: type
ATTRID: 2
ATTRHDRNAME: AO_RESOURCERECORD_TYPE
ATTRTYPE: AT_SHORT
ATTRFLAGS: AF_REQUIRED
ATTRVIZ: 5
ATTRDESC:: eod
The type of the resource record.
eod

ATTR: class
ATTRID: 3
ATTRHDRNAME: AO_RESOURCERECORD_CLASS
ATTRTYPE: AT_SHORT
ATTRFLAGS: AF_IMMUTABLE, AF_REQUIRED
ATTRVIZ: 5
ATTRDEFVAL: 1
ATTRDESC:: eod
The class of the resource record
eod

ATTR: ttl
ATTRID: 4
ATTRHDRNAME: AO_RESOURCERECORD_TTL
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRFLAGS: AF_REQUIRED
ATTRVIZ: 5
ATTRDESC:: eod
The resource record time-to-live, in seconds.  The length
of time the record may be cached by a client.

Validation: 0 <= x <= 2147483647
eod

ATTR: value
ATTRID: 5
ATTRHDRNAME: AO_RESOURCERECORD_VAL
ATTRFLAGS: AF_REQUIRED
ATTRTYPE: AT_BLOB
ATTRVIZ: 5

CLASS: Host
CLASSROOT: HOST
CLASSID: 1203
CLASSVIZ: 3
CLASSNAME: 1
CLASSNAMEDESC:: eod
The name of Host objects is the name of the resource record.
Host objects cannot be renamed.
eod
CLASSDESC:: eod
A DNS host
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_HOST_NAME
ATTRFLAGS: AF_REQUIRED
ATTRTYPE: AT_STRING
ATTRVIZ: 3
ATTRDESC:: eod
The domain name of the host.
eod

ATTR: addrs
ATTRID: 3
ATTRHDRNAME: AO_HOST_ADDRS
ATTRFLAGS: AF_REQUIRED
ATTRTYPE: AT_ARRAY(AT_IPADDR)
ATTRVIZ: 5
ATTRDESC:: eod
The list of addresses assigned to the host.

Validation: Standard host IP address requirements.
eod

ATTR: aliases
ATTRID: 4
ATTRHDRNAME: AO_HOST_ALIASES
ATTRTYPE: AT_ARRAY(AT_STRING)
ATTRVIZ: 5
ATTRDESC:: eod
An optional list of alias domain names for this host.

Validation: must not be the same as any host name.
eod


CLASS: StaticPool
CLASSROOT: STPOOL
CLASSID: 1204
CLASSVIZ: 1
CLASSNAME: 1
CLASSNAMEDESC:: eod
The names of StaticPool objects are arbitrarily chosen by the user, 
and must be unique.  There is no semantic value associated with
the name.
eod
CLASSDESC:: eod
A StaticPool object, containing address ranges and zone assignments
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_STPOOL_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: Name
ATTRVIZ: 3
ATTRDESC:: eod
The name of the static pool object.
eod

ATTR: addr
ATTRID: 2
ATTRHDRNAME: AO_STPOOL_NETADDR
ATTRTYPE: AT_IPADDR
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: IPAddr
ATTRVIZ: 5
ATTRDESC:: eod
The address of the subnet for which the static pool
contains addresses.
eod

ATTR: mask
ATTRID: 3
ATTRHDRNAME: AO_STPOOL_NETMASK
ATTRTYPE: AT_MASK
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: NetMask
ATTRVIZ: 5
ATTRDESC:: eod
The subnet mask associated with the static pool's network address.
eod

ATTR: dns-zone-name
ATTRID: 4
ATTRHDRNAME: AO_STPOOL_DNSZONENAME
ATTRFLAGS: AF_IMMUTABLE, AF_REQUIRED
ATTRTYPE: AT_STRING
ATTRMCDPATH: DnsZoneName
ATTRVIZ: 5
ATTRDESC:: eod
The name of the static pool's assigned DNS zone where resource records
should be added.
eod

ATTR: dns-reverse-zone-name
ATTRID: 5
ATTRHDRNAME: AO_STPOOL_DNSREVERSEZONENAME
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_IMMUTABLE
ATTRMCDPATH: DnsReverseZoneName
ATTRVIZ: 5
ATTRDESC:: eod
The name of the static pool's assigned reverse DNS zone where resource
records should be added.
eod

ATTR: dns-host-bytes
ATTRID: 6
ATTRHDRNAME: AO_STPOOL_DNSNUMBEROFHOSTBYTES
ATTRTYPE: AT_RANGEINT(1-4)
ATTRDEFVAL: 3
ATTRFLAGS: AF_IMMUTABLE, AF_INITIALIZE
ATTRMCDPATH: DnsNumberOfHostBytes
ATTRVIZ: 3
ATTRDESC:: eod
This number of the bytes in a pool's IP address
to use when forming in-addr.arpa names. The cluster forms names in the
in-addr zone by prepending dns-host-bytes of IP address (in reverse
order) to the dns-reverse-zone-name.
Validation: 1 <= x <= 3
eod

ATTR: free-addresses
ATTRID: 7
ATTRHDRNAME: AO_STPOOL_FREEPOOLADDRESSES
ATTRTYPE: AT_INT
ATTRFLAGS: AF_IMMUTABLE
ATTRMCDPATH: FreeAddr
ATTRVIZ: 5
ATTRDESC:: eod
The number of addresses, free to be assigned in the static pool
eod

ATTR: total-addresses
ATTRID: 8
ATTRHDRNAME: AO_STPOOL_TOTALPOOLADDRESSES
ATTRTYPE: AT_INT
ATTRFLAGS: AF_IMMUTABLE
ATTRMCDPATH: TotalAddr
ATTRVIZ: 5
ATTRDESC:: eod
The total number of addresses in the static pool
eod


CLASS: PoolManager
CLASSROOT: POOLMANAGER
CLASSID: 1205
CLASSVIZ: 1
CLASSNAME: 1
CLASSNAMEDESC:: eod
The PoolManager doesn't really have a name.
eod
CLASSDESC:: eod
A StaticPool Manager object, maintains static pools.
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_POOLMANAGER_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: Name
ATTRVIZ: 3
ATTRDESC:: eod
The name of the static pool manager object.
eod

ATTR: pool-count
ATTRID: 2
ATTRHDRNAME: AO_POOLMANAGER_POOLCOUNT
ATTRTYPE: AT_INT
ATTRMCDPATH: PoolCount
ATTRVIZ: 5
ATTRDESC:: eod
The total number of static pools
eod

CLASS: RRSet
CLASSROOT: RRSET
CLASSID: 1206
CLASSNAME: 1
CLASSNAMEDESC:: eod
eod
CLASSVIZ: 5
CLASSDESC:: eod
A collection of DNS resource records with the same name (and class,
where class is INET and not HESIOD or CHAOS)
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_RRSET_NAME
ATTRTYPE: AT_RDNSNAME
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the common name of the records in this set.
eod

ATTR: flags
ATTRID: 2
ATTRHDRNAME: AO_RRSET_FLAGS
ATTRTYPE: AT_FLAGSINT(dynamic=1,whiteout=2)
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the flags for this record set, copied from DNS server
internal code.  It isn't clear that they are significant at this
layer of abstraction, especially with the split of static and
dynamic RR lists.
eod

ATTR: static-rrs
ATTRID: 3
ATTRHDRNAME: AO_RRSET_STATRRS
ATTRTYPE: AT_NLIST(AT_PACK(SSIB*))
# AT_PACK = 36
ATTRVAL: 36
ATTRVIZ: 3
ATTRDESC:: eod
The actual RR data blobs for this name.  The blobs are of the form:
  type:  2 bytes
  class: 2 bytes
  ttl:   4 bytes
  data:  sz - 8 bytes
eod

ATTR: dynamic-rrs
ATTRID: 4
ATTRHDRNAME: AO_RRSET_DYNRRS
ATTRTYPE: AT_NLIST(AT_PACK(SSIB*))
# AT_PACK = 36
ATTRVAL: 36
ATTRVIZ: 3
ATTRDESC:: eod
The actual RR data blobs for this name.  The blobs are of the form:
  type:  2 bytes
  class: 2 bytes
  ttl:   4 bytes
  data:  sz - 8 bytes
eod

ATTR: zone
ATTRID: 5
ATTRHDRNAME: AO_RRSET_ZONE
#ATTRTYPE: AT_OBJREF(AT_OBJ(CCMZone))
ATTRTYPE: AT_OID
ATTRVAL: 1410
ATTRVIZ: 3
ATTRDESC:: eod
The oid of the zone that contains this RRSet.
eod

CLASS: DNS_DB55ConversionTag
CLASSROOT: DNS_DB55CONVERSIONTAG
CLASSID: 1207
CLASSNAMEDESC:: eod
eod
CLASSVIZ: 3
CLASSDESC:: eod
Defines an object that specifies if the DNS DB(s) have been
(successfully) upgraded from pre-5.5 to 5.5 (or post 5.5). The MCD
config process checks this tag to determine the need of a (runtime)
5.5 DB conversion. This object is stored in MCD state and is only
used by the DNS configuration process. No UI should have visibility
to this.
eod

ATTR: conversion-start
ATTRID: 1
ATTRHDRNAME: AO_DNS_55CONVERSION_START_TIME
ATTRTYPE: AT_DATE
ATTRFLAGS: AF_REQUIRED
ATTRDESC:: eod
The date and time when the 5.5 DB conversion started.
eod

ATTR: conversion-stop
ATTRID: 2
ATTRHDRNAME: AO_DNS_55CONVERSION_STOP_TIME
ATTRTYPE: AT_DATE
ATTRFLAGS: AF_REQUIRED
ATTRDESC:: eod
The date and time when the 5.5 DB conversion successfully completed.
eod

ATTR: conversion-status
ATTRID: 3
ATTRHDRNAME: AO_DNS_55CONVERSION_STATUS
ATTRTYPE: AT_ENUMINT(GOOD=0, FAILED=1, INCOMPLETE=2)
ATTRFLAGS: AF_REQUIRED
ATTRDESC:: eod
Status of the (last) 5.5 DB conversion attempt: 
  0 - good, 
  1 - failed, 
  2 - incomplete.
eod

ATTR: conversion-attempts
ATTRID: 4
ATTRHDRNAME: AO_DNS_55CONVERSION_ATTEMPTS
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRDESC:: eod
Number of 5.5 DB conversions attempts. After a successfull conversion,
minimum value should be 1.
eod

ATTR: upgraded-to-jacksprat
ATTRID: 5
ATTRHDRNAME: AO_DNS_55CONVERSION_JACKSPRAT_UPGRADED
ATTRTYPE: AT_ENUMINT(GOOD=0, FAILED=1, INCOMPLETE=2)
ATTRFLAGS: AF_REQUIRED
ATTRDESC:: eod
Indicates server's status of JackSprat upgrade.

Note, the server during the JackSprat upgrade, blobifies zone's
bookkeeping data in MCD state and removes residual (from the 5.5
upgrade) dynamic RRs in MCD state.
eod

ATTR: jacksprat-upgrade-time
ATTRID: 6
ATTRHDRNAME: AO_DNS_55CONVERSION_JACKSPRAT_UPGRADE_TIME
ATTRTYPE: AT_DATE
ATTRFLAGS: AF_REQUIRED
ATTRDESC:: eod
The date and time when the JackSprat upgrade (server side)
successfully completed.
eod

CLASS: ZoneBookkeeping
CLASSROOT: ZONEBOOKKEEPING
CLASSID: 1208
CLASSNAMEDESC:: eod
eod
CLASSVIZ: 3
CLASSDESC:: eod
Defines the object(s) representing zone bookkeeping information (as
stored in MCD state). The server maintains this information, on a per
zone basis, for data synchronization purposes. This bookkeeping
information is stored as blobs. This class is needed to access the
individual components in the blob.
eod

ATTR: major-version-number
ATTRID: 1
ATTRHDRNAME: AO_ZONEBOOKKEEPING_MAJOR
ATTRTYPE: AT_INT
ATTRDESC:: eod
eod

ATTR: minor-version-number
ATTRID: 2
ATTRHDRNAME: AO_ZONEBOOKKEEPING_MINOR
ATTRTYPE: AT_INT
ATTRDESC:: eod
eod

ATTR: prev-conf-gen-number
ATTRID: 3
ATTRHDRNAME: AO_ZONEBOOKKEEPING_PREV_CONF_GEN_NUMB
ATTRTYPE: AT_INT
ATTRDESC:: eod
eod

ATTR: default-ttl
ATTRID: 4
ATTRHDRNAME: AO_ZONEBOOKKEEPING_DEFAULT_TTL
ATTRTYPE: AT_INT
ATTRDESC:: eod
eod

ATTR: scavenge-base-time
ATTRID: 5
ATTRHDRNAME: AO_ZONEBOOKKEEPING_SCVG_BASE_TIME
ATTRTYPE: AT_INT
ATTRDESC:: eod
eod

ATTR: orig-serial
ATTRID: 6
ATTRHDRNAME: AO_ZONEBOOKKEEPING_ORIG_SERIAL
ATTRTYPE: AT_INT
ATTRDESC:: eod
eod

ATTR: attributes
ATTRID: 8
ATTRHDRNAME: AO_ZONEBOOKKEEPING_ATTRIBUTES
ATTRTYPE: AT_INT
ATTRDESC:: eod
eod

ATTR: version
ATTRID: 9
ATTRHDRNAME: AO_ZONEBOOKKEEPING_VERSION
ATTRTYPE: AT_INT
ATTRDESC:: eod
eod


CLASS: DNSServerStats
CLASSID: 1209

ATTR: id
ATTRID: 1
ATTRTYPE: AT_STRING
ATTRDESC:: eod
A string that identifies this DNS Server.
eod

ATTR: config-recurs
ATTRID: 2
ATTRTYPE: AT_INT
ATTRDESC:: eod
This represents the recursion services offered by this name server.
The values that can be read or written are:

available(1) - performs recursion on requests from clients.

restricted(2) - recursion is performed on requests only from certain
clients, for example; clients on an access control list.

unavailable(3) - recursion is not available.
eod

ATTR: config-up-time
ATTRID: 3
ATTRTYPE: AT_TIME
ATTRDESC:: eod
The time elapsed since the DNS Server process was started.
eod

ATTR: config-reset-time
ATTRID: 4
ATTRTYPE: AT_TIME
ATTRDESC:: eod
The time elased since the DNS Server was last reset (restarted).
eod

ATTR: config-reset
ATTRID: 5
ATTRTYPE: AT_INT
ATTRDESC:: eod
Status/action object to reinitialize any persistant name server state.
When set to reset(2), any persistant name server state (such as a
process) is reinitialized as if the name server had just been started.
This value will never be returned by a read operation.  When read, one
of the following values will be returned:

other(1) - server in some unknown state;

initializing(3) - server (re)initializing;

running(4) - server currently running.
eod

ATTR: counter-auth-ans
ATTRID: 6
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of queries which were authoritatively answered.
eod

ATTR: counter-auth-no-names
ATTRID: 7
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of queries for which `authoritative no such name' responses
were made.
eod

ATTR: counter-auth-no-data-resps
ATTRID: 8
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of queries for which `authoritative no such data'
(empty answer) responses were made.
eod

ATTR: counter-non-auth-datas
ATTRID: 9
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of queries which were non-authoritatively answered
(cached data).
eod

ATTR: counter-non-auth-no-datas
ATTRID: 10
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of queries which were non-authoritatively answered
with no data (empty answer).
eod

ATTR: counter-referrals
ATTRID: 11
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of requests that were referred to other servers.
eod

ATTR: counter-errors
ATTRID: 12
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of requests the server has processed that were answered
with errors (RCODE values other than 0 and 3). [Reference
RFC-1035 section 4.1.1.]
eod

ATTR: counter-rel-names
ATTRID: 13
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of requests received by the server for names that
are only 1 label long (text form - no internal dots).
eod

ATTR: counter-req-refusals
ATTRID: 14
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of DNS requests refused by the server.
eod

ATTR: counter-req-unparses
ATTRID: 15
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of requests received which were unparseable.
eod

ATTR: counter-other-errors
ATTRID: 16
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of requests which were aborted for other (local)
server errors.
eod

ATTR: counter-reset-time
ATTRID: 17
ATTRTYPE: AT_DATE
ATTRDESC:: eod
The time stamp for 'dns resetStats'.
eod

ATTR: sample-time
ATTRID: 18
ATTRTYPE: AT_DATE
ATTRDESC:: eod
The time stamp of last sample.
eod

ATTR: sample-interval
ATTRID: 19
ATTRTYPE: AT_TIME
ATTRDESC:: eod
The counter sample interval.
eod

ATTR: stats-categories
ATTRID: 20
ATTRTYPE: AT_FLAGSINT(query=1, performance=2, security=3, errors=4, maxcounters=5, all=6)
ATTRDESC:: eod
A list of the valid specialized dns server statistics categories
available.
eod

CLASS: DNSServerPerformanceStats
CLASSID: 1210

ATTR: updated-rrs
ATTRID: 1
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of RR's added and deleted, including updates 
from the CNR UIs, whether or not there were database errors.
eod

ATTR: update-packets
ATTRID: 2
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of update packets successfully processed.
eod

ATTR: ixfrs-out
ATTRID: 3
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of successful outbound incremental transfers. 
eod

ATTR: ixfrs-in
ATTRID: 4
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of successful inbound incremental transfers, including
incremental requests that resulted in full zone transfers.
eod

ATTR: ixfrs-full-resp
ATTRID: 5
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of outbound full zone transfers in response to IXFR
requests. These may have been due to IXFR errors, insufficient serial
history, or too many changes in the zone.
eod

ATTR: axfrs-out
ATTRID: 6
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of successful outbound full zone transfers, including those
counted in ixfrs-full-resp.
eod

ATTR: axfrs-in
ATTRID: 7
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of successful inbound AXFRs.
eod

ATTR: queries
ATTRID: 8
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of queries responded to. This includes name queries, 
IXFR/AXFR responses, as well as query forward responses, 
but excludes updates.
eod

ATTR: xfrs-out-at-limit
ATTRID: 9
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of occasions that outbound transfers reached the concurrent
limit.
eod

ATTR: xfrs-in-at-limit
ATTRID: 10
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of occasions that inbound xfrs reached the concurrent limit.
eod

ATTR: notifies-out
ATTRID: 11
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of outbound notifies. Counts each notify packet sent.
eod

ATTR: notifies-in
ATTRID: 12
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of inbound notifies. Counts each notify packet. 
eod


CLASS: DNSServerQueryStats
CLASSID: 1211

ATTR: auth-answers
ATTRID: 1
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of queries which were authoritatively answered. ref RFC1611.
eod

ATTR: auth-no-names
ATTRID: 2
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of queries for which authoritative-no-such-name responses 
were made. ref RFC1611.
eod

ATTR: auth-no-data-responses
ATTRID: 3
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of queries for which authoritative-no-such-data
(empty answer) responses were made. ref RFC1611.
eod

ATTR: nonauth-answers
ATTRID: 4
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of queries which were non-authoritatively answered (from cached
data). ref RFC1611.
eod

ATTR: nonauth-no-data-responses
ATTRID: 5
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of queries which were non-authoritatively answered with no
data. ref RFC1611.
eod

ATTR: referrals
ATTRID: 6
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of requests that were referred to other servers. ref RFC1611.
eod

ATTR: relative-name-requests
ATTRID: 7
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of requests received by the server for names that are only one
label long (i.e. in text form - no internal dots). ref RFC1611.
eod

ATTR: refusals
ATTRID: 8
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of queries refused.
eod

ATTR: lame-delegations
ATTRID: 9
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of query lame delegations.
eod

ATTR: mem-cache-hits
ATTRID: 10
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of mem-cache lookup hits.
eod

ATTR: mem-cache-misses
ATTRID: 11
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of mem-cache lookup misses.
eod

ATTR: mem-cache-writes
ATTRID: 12
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of mem-cache writes.
eod


CLASS: DNSServerSecurityStats
CLASSID: 1212

ATTR: rcvd-tsig-packets
ATTRID: 1
ATTRTYPE: AT_INT
ATTRDESC:: eod
This counter is increased each time a packet with a TSIG RR is
processed, if TSIG processing is enabled for the type of packet.
eod

ATTR: detected-tsig-bad-time
ATTRID: 2
ATTRTYPE: AT_INT
ATTRDESC:: eod
Bad timestamp in TSIG in an incoming packet. 
eod

ATTR: detected-tsig-bad-key
ATTRID: 3
ATTRTYPE: AT_INT
ATTRDESC:: eod
Bad keyname (invalid or unknown key) in TSIG in an incoming packet.
eod

ATTR: detected-tsig-bad-sig
ATTRID: 4
ATTRTYPE: AT_INT
ATTRDESC:: eod
Bad signature in a TSIG in an incoming packet. 
eod

ATTR: rcvd-tsig-bad-time
ATTRID: 5
ATTRTYPE: AT_INT
ATTRDESC:: eod
Counts BADTIME errors received after sending a TSIG.
eod

ATTR: rcvd-tsig-bad-key
ATTRID: 6
ATTRTYPE: AT_INT
ATTRDESC:: eod
Counts BADKEY errors received after sending a TSIG.
eod

ATTR: rcvd-tsig-bad-sig
ATTRID: 7
ATTRTYPE: AT_INT
ATTRDESC:: eod
Counts BADSIG errors received after sending a TSIG.
eod

ATTR: unauth-xfer-reqs
ATTRID: 8
ATTRTYPE: AT_INT
ATTRDESC:: eod
If zone transfer restriction has been enabled, count of ACL
authorization failures.
eod

ATTR: unauth-update-reqs
ATTRID: 9
ATTRTYPE: AT_INT
ATTRDESC:: eod
Counts updates which result in ACL authorization failure, or which
target zones which do not support updates. Note that RR updates from
CNR UIs bypass this check.
eod

ATTR: restrict-query-acl
ATTRID: 10
ATTRTYPE: AT_INT
ATTRDESC:: eod
Counts that queries to be restricted by the DNS server through 
the global or zone Access Control List (ACL). 
eod


CLASS: DNSServerErrorsStats
CLASSID: 1213

ATTR: update-errors
ATTRID: 1
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of updates resulting in errors or failures.
This includes negative responses to update prerequisite checks,
but excludes TSIG responses. Both update packets and updates
generated by the CNR UIs may be included in this count.
eod

ATTR: ixfr-in-errors
ATTRID: 2
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total in-bound IXFR errors, but excluding packet format errors.
eod
       
ATTR: ixfr-out-errors
ATTRID: 3
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total IXFR error responses sent, excluding packet format errors.
eod

ATTR: axfr-in-errors
ATTRID: 4
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total in-bound AXFR errors, but excluding packet format errors.
eod

ATTR: axfr-out-errors
ATTRID: 5
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total IXFR error responses sent, excluding packet format errors.
eod

ATTR: sent-total-errors
ATTRID: 6
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of requests the server answered with errors (RCODE values
other than 0,3,6,7, and 8). ref RFC1611.
eod

ATTR: sent-format-errors
ATTRID: 7
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of requests received which were unparseable. ref RFC1611.
eod

ATTR: sent-other-errors
ATTRID: 8
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of requests which were aborted for other local server
errors. ref RFC1611.
eod

ATTR: sent-refusal-errors
ATTRID: 9
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of requests which resulted in REFUSED. ref RFC1611.
eod

ATTR: rcvd-format-errors
ATTRID: 10
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of responses received with FORMERR status.
eod


CLASS: DNSServerMaxCounterStats
CLASSID: 1214

ATTR: concurrent-xfrs-in
ATTRID: 1
ATTRTYPE: AT_INT
ATTRDESC:: eod
Maximum number of concurrent threads processing inbound transfers
during the last sampling period.
eod

ATTR: concurrent-xfrs-out
ATTRID: 2
ATTRTYPE: AT_INT
ATTRDESC:: eod
Maximum number of concurrent threads processing outbound transfers
during the last sampling period.
eod

# CLASSID RANGE TFTP classes 1300 - 1309

CLASS: TFTPServer
CLASSROOT: TFTPSERVER
CLASSID: 1300
CLASSNAME: 1
CLASSNAMEDESC:: eod
In Network Registrar, there is only one TFTP server per cluster, and
TFTP servers are not referenced by name.
eod
CLASSVIZ: 5
CLASSDESC:: eod
The TFTP server configuration object.
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_TFTPSERVER_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the name of the TFTP server.
eod

ATTR: active-directory-domain
ATTRID: 2
ATTRHDRNAME: AO_TFTPSERVER_ACTIVE_DIRECTORY_DOMAIN
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: TftpActiveDirectoryDomain
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the name of an Active Directory Domain the TFTP server will
use to provide dynamic configuration file support.
eod

ATTR: default-device
ATTRID: 3
ATTRHDRNAME: AO_TFTPSERVER_DEFAULT_DEVICE
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: TftpDefaultDevice
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the name of the default disk device the TFTP server will use
when none is specified in the pathname contained in the TFTP request.
This property is specifically to be used on NT to specify a default
drive letter.
eod

ATTR: docsis-access
ATTRID: 4
ATTRHDRNAME: AO_TFTPSERVER_DOCSIS_ACCESS
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_REQUIRED
ATTRDEFVAL: false
ATTRMCDPATH: TftpDocsisAccess
ATTRVIZ: 5
ATTRDESC:: eod
Specifies how the TFTP server should respond to DOCSIS file requests
from TFTP clients.  If this feature is disabled, the TFTP server will
refuse DOCSIS file requests.
eod

ATTR: read-access
ATTRID: 5
ATTRHDRNAME: AO_TFTPSERVER_READ_ACCESS
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_REQUIRED
ATTRDEFVAL: true
ATTRMCDPATH: TftpReadAccess
ATTRVIZ: 5
ATTRDESC:: eod
Specifies how the TFTP server should respond to file read requests
from TFTP clients.  If this feature is disabled, the TFTP server will
refuse file read requests.
eod

ATTR: write-access
ATTRID: 6
ATTRHDRNAME: AO_TFTPSERVER_WRITE_ACCESS
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_REQUIRED
ATTRDEFVAL: false
ATTRMCDPATH: TftpWriteAccess
ATTRVIZ: 5
ATTRDESC:: eod
Specifies how the TFTP server should respond to file write requests
from TFTP clients.  If this feature is disabled, the TFTP server will
refuse file write requests.
eod

ATTR: initial-background-timer-sleep-time
ATTRID: 7
ATTRHDRNAME: AO_TFTPSERVER_INTIAL_BACKGROUD_TIMER_SLEEP_TIME
ATTRTYPE: AT_RANGEINT(1-2147483647)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 5
ATTRMCDPATH: TftpInitialBackgroundTimerSleepTime
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the length of time the background timer thread will 
sleep at server startup time.  This property should not be changed
by customers.
eod

ATTR: initial-packet-timeout
ATTRID: 8
ATTRHDRNAME: AO_TFTPSERVER_INITIAL_PACKET_TIMEOUT
ATTRTYPE: AT_RANGEINT(1-2147483647)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 5
ATTRMCDPATH: TftpInitialPacketTimeOut
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the initial length of time the TFTP server will wait after
sending a response to a client before declaring that response
timed-out and sending a retransmission to the client.
eod

ATTR: ldap-host-name
ATTRID: 9
ATTRHDRNAME: AO_TFTPSERVER_LDAP_HOST_NAME
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: localhost
ATTRMCDPATH: TftpLdapHostName
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the hostname or IP address of a LDAP server the TFTP
server will use to provide dynamic configuration file support.
eod

ATTR: ldap-initial-timeout
ATTRID: 10
ATTRHDRNAME: AO_TFTPSERVER_LDAP_INITIAL_TIMEOUT
ATTRTYPE: AT_RANGEINT(1-2147483647)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 10
ATTRMCDPATH: TftpLdapInitialTimeOut
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the initial length of time the TFTP server will wait after
sending a request to a LDAP server before declaring that request
timed-out and sending a retransmission to the server.
eod

ATTR: ldap-maximum-timeout
ATTRID: 11
ATTRHDRNAME: AO_TFTPSERVER_LDAP_MAXIMUM_TIMEOUT
ATTRTYPE: AT_RANGEINT(1-2147483647)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 60
ATTRMCDPATH: TftpLdapMaximumTimeOut
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the maximum length of time the TFTP server will wait after
transmitting the initial LDAP request before giving up retrying on
that request.
eod

ATTR: ldap-password
ATTRID: 12
ATTRHDRNAME: AO_TFTPSERVER_LDAP_PASSWORD
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: TftpLdapPassword
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the password the TFTP server will use when connecting to a
LDAP server.
eod

ATTR: ldap-port-number
ATTRID: 13
ATTRHDRNAME: AO_TFTPSERVER_LDAP_PORT_NUMBER
ATTRTYPE: AT_RANGEINT(1-65535)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 389
ATTRMCDPATH: TftpLdapPortNumber
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the port number the TFTP server will use when communicating
with a LDAP server.
eod

ATTR: ldap-root-dn
ATTRID: 14
ATTRHDRNAME: AO_TFTPSERVER_LDAP_ROOT_DN
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: TftpLdapRootDN
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the root distinguished name the TFTP server will use to
locate the root of the directory tree for dynamic configuration file
support.
eod

ATTR: ldap-use-ssl
ATTRID: 15
ATTRHDRNAME: AO_TFTPSERVER_LDAP_USE_SSL
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_REQUIRED
ATTRDEFVAL: false
ATTRMCDPATH: TftpLdapUseSSL
ATTRVIZ: 5
ATTRDESC:: eod
Specifies whether or not the TFTP server will use SSL when
communicating with a LDAP server.  If this feature is disabled, the
TFTP server will not use SSL when communicating with LDAP.
eod

ATTR: ldap-user-name
ATTRID: 16
ATTRHDRNAME: AO_TFTPSERVER_LDAP_USER_NAME
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: TftpLdapUserName
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the user name the TFTP server will use when connecting to a
LDAP server.
eod

ATTR: log-file-count
ATTRID: 17
ATTRHDRNAME: AO_TFTPSERVER_LOG_FILE_COUNT
ATTRTYPE: AT_RANGEINT(1-2147483647)
ATTRFLAGS:
ATTRDEFVAL:
ATTRMCDPATH: TftpLogFileCount
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the number of log files the TFTP server will maintain in the
server logs directory.
eod

ATTR: log-file-size
ATTRID: 18
ATTRHDRNAME: AO_TFTPSERVER_LOG_FILE_SIZE
ATTRTYPE: AT_STRING
ATTRFLAGS:
ATTRDEFVAL:
ATTRMCDPATH: TftpLogFileSize
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the size of each log file that the TFTP server will maintain
in the server logs directory.
eod

ATTR: log-level
ATTRID: 19
ATTRHDRNAME: AO_TFTPSERVER_LOG_LEVEL
ATTRTYPE: AT_RANGEINT(0-4)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 3
ATTRMCDPATH: TftpLogLevel
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the level of verbosity the TFTP server will employ when
writing log messages to the TFTP server log file.  Each integer value
from 0 through 4 enables the following log levels: None, Error,
Warning, Information and Activity.
eod

ATTR: packet-trace-level
ATTRID: 20
ATTRHDRNAME: AO_TFTPSERVER_TRACE_LEVEL
ATTRTYPE: AT_RANGEINT(0-4)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 0
ATTRMCDPATH: TftpTraceLevel
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the level of verbosity the TFTP server will employ when
writing messages to the server trace file.  Each integer value from 1
through 4 enables increasing levels of tracing.  Setting packet trace
level to 0 disables tracing.
eod

ATTR: max-inbound-file-size
ATTRID: 21
ATTRHDRNAME: AO_TFTPSERVER_MAXIMUM_INBOUND_FILE_SIZE
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 1024k
ATTRMCDPATH: TftpMaximumInboundFileSize
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the maximum file size limit that the TFTP server will
enforce for a file written to the TFTP server.  Default units is in
kilobytes.  Use k, m or g to indicate kilobytes, megabytes or
gigabytes.
eod

ATTR: max-tftp-packets
ATTRID: 22
ATTRHDRNAME: AO_TFTPSERVER_MAXIMUM_NUMBER_OF_SESSIONS
ATTRTYPE: AT_RANGEINT(1-1500)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 1024 
ATTRMCDPATH: TftpMaximumNumberOfSessions
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the maximum number of simultaneous TFTP packets the TFTP
server will support.  If this limit is reached, the server logs an
error message and drops subsequent TFTP requests until packets
free up.
eod

ATTR: max-udp-packet-size
ATTRID: 23
ATTRHDRNAME: AO_TFTPSERVER_MAXIMUM_UDP_PACKET_SIZE
ATTRTYPE: AT_RANGEINT(1-65535)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 516
ATTRMCDPATH: TftpMaximumUdpPacketSize
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the maximum UDP packet size the TFTP server will support.
eod

ATTR: min-socket-buffer-size
ATTRID: 24
ATTRHDRNAME: AO_TFTPSERVER_MINIMUM_SOCKET_BUFFER_SIZE
ATTRTYPE: AT_RANGEINT(1-2147483647)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 65536
ATTRMCDPATH: TftpMinimumSocketBufferSize
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the minimum socket buffer size the TFTP server will use for
the well known port on which it is listening for TFTP requests.
eod

ATTR: per-session-heap-size
ATTRID: 25
ATTRHDRNAME: AO_TFTPSERVER_PER_SESSION_HEAP_SIZE
ATTRTYPE: AT_RANGEINT(1-2147483647)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 4096
ATTRMCDPATH: TftpPerSessionHeapSize
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the initial size of the session heap allocated during
session creation.  This property should not be changed by customers.
eod

ATTR: port-number
ATTRID: 26
ATTRHDRNAME: AO_TFTPSERVER_PORT_NUMBER
ATTRTYPE: AT_RANGEINT(1-65535)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 69
ATTRMCDPATH: TftpPortNumber
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the UDP port number the TFTP server will use to listen for
TFTP requests.
eod

ATTR: session-timeout
ATTRID: 27
ATTRHDRNAME: AO_TFTPSERVER_SESSION_TIMEOUT
ATTRTYPE: AT_RANGEINT(1-2147483647)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 20
ATTRMCDPATH: TftpSessionTimeOut
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the maximum length of time the TFTP server will wait after
transmitting the initial response before giving up retrying on that
response.  If no response is received from the client within this
timeout period, the TFTP session is terminated.
eod

ATTR: timer-queue-thread-heap-size
ATTRID: 28
ATTRHDRNAME: AO_TFTPSERVER_TIMER_QUEUE_THREAD_HEAP_SIZE
ATTRTYPE: AT_RANGEINT(1-2147483647)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 2048
ATTRMCDPATH: TftpTimerQueueThreadHeapSize
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the initial size of the timer queue thread heap.  This
property should not be changed by customers.
eod

ATTR: use-home-directory-as-root
ATTRID: 29
ATTRHDRNAME: AO_TFTPSERVER_USE_HOME_DIRECTORY_AS_ROOT
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_REQUIRED
ATTRDEFVAL: false
ATTRMCDPATH: TftpUseHomeDirectoryAsRoot
ATTRVIZ: 5
ATTRDESC:: eod
Specifies whether or not the TFTP server will treat pathnames
contained within TFTP requests as if the paths were rooted at the
specified home directory.  If this feature is enabled, the TFTP server
will attempt to resolve both absolute and relative pathnames to paths
located beneath the specified home directory.
eod

ATTR: home-directory
ATTRID: 30
ATTRHDRNAME: AO_TFTPSERVER_HOME_DIRECTORY
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: TftpHomeDirectory
ATTRVIZ: 5
ATTRDESC:: eod
Specifies a path to a home directory the TFTP server will use to
resolve TFTP requests.  If use-home-directory-as-root is disabled, the
home directory is used in conjunction with the paths specified in the
search-list to resolve TFTP requests.
eod

ATTR: search-list
ATTRID: 31
ATTRHDRNAME: AO_TFTPSERVER_SEARCH_LIST
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: TftpSearchPath
ATTRVIZ: 5
ATTRDESC:: eod
Specifies a comma separated list of paths the TFTP server will use to
resolve TFTP requests.  If use-home-directory-as-root is enabled, the
paths in the search list are ignored and the home directory is used to
resolve all TFTP requests.
eod

ATTR: docsis-file-logging
ATTRID: 32
ATTRHDRNAME: AO_TFTPSERVER_DOCSIS_FILE_LOGGING
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_REQUIRED
ATTRDEFVAL: false
ATTRMCDPATH: TftpDocsisFileLogging
ATTRVIZ: 5
ATTRDESC:: eod
Specifies whether the TFTP server should log generated DOCSIS files to
disk.  If this feature is enabled, the TFTP server will log each
generated DOCSIS configuration file to a tftp subdirectory within the
server logs directory.
eod

ATTR: docsis-log-file-count
ATTRID: 33
ATTRHDRNAME: AO_TFTPSERVER_DOCSIS_LOG_FILE_COUNT
ATTRTYPE: AT_RANGEINT(1-2147483647)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 100
ATTRMCDPATH: TftpDocsisLogFileCount
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the maximum number of DOCSIS configuration log files the
TFTP server will maintain in the tftp subdirectory within the server
logs directory.  Once this limit is reached, the TFTP server will
remove one DOCSIS log file for each new log file it creates so as to
not exceed the limit.
eod

ATTR: docsis-pathname-prefix
ATTRID: 34
ATTRHDRNAME: AO_TFTPSERVER_DOCSIS_PATHNAME_PREFIX
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: /docsis
ATTRMCDPATH: TftpDocsisPathnamePrefix
ATTRVIZ: 5
ATTRDESC:: eod
Specifies a pathname prefix the TFTP server will recognize as the
trigger to create a DOCSIS configuration file.  This prefix must match
the one the DHCP server is using to generate the DOCSIS filename that
DHCP sends to the TFTP client.
eod

ATTR: docsis-address-validation
ATTRID: 35
ATTRHDRNAME: AO_TFTPSERVER_DOCSIS_ADDRESS_VALIDATION
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_REQUIRED
ATTRDEFVAL: true
ATTRMCDPATH: TftpDocsisAddressValidation
ATTRVIZ: 3
ATTRDESC:: eod
Specifies whether the TFTP server should perform IP Address validation
on incoming DOCSIS configuration file requests.
eod

ATTR: csrc-configuration-file
ATTRID: 36
ATTRHDRNAME: AO_TFTPSERVER_CSRC_CONFIGURATION_FILE
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: TftpCsrcConfigurationFile
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the path to a configuration file the TFTP server will use
when loading the CSRC library.  The CSRC library enables the TFTP 
server to generate DOCSIS modem configuration files.  The location 
of the CSRC configuration file is typically 
/CSRC_INSTALL_DIR/conf/csrc.cfg.
eod

ATTR: scp-port
ATTRID: 37
ATTRHDRNAME: AO_TFTPSERVER_SCP_PORT
ATTRTYPE: AT_RANGEINT(0-65535)
ATTRMCDPATH: scp-port
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the scp port number to be used. If the requested port
number is in use, the server will select an alternate number to use.
eod

ATTR: log-settings
ATTRID: 38
ATTRHDRNAME: AO_TFTPSERVER_VERBOSELOGGING
ATTRTYPE: AT_FLAGSINT( verbose=1, no-success-messages=2 )
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: verbose
ATTRMCDPATH: VerboseLogging
ATTRVIZ: 5
ATTRDESC:: eod
The TFTP server will allow control over additional details about the
events listed in the log-settings. Additional detail can be very
helpful when analyzing a problem, but can cause the log files to fill
up quickly (and therefore to turn over frequently, possibly losing
important information) if left enabled for a long period of time.
By default, the TFTP server's logging is verbose, which is okay for 
this server.
eod
VDESC:: eod
The possible flags are:
  verbose
    This will cause all the logging in the server to be active.
    There will be a success message printed to the log for
    each successful transfer.
  no-success-messages
    This setting will cause the single line message that is
    normally logged for every successful read from or write to
    the TFTP server to not appear.  It affects logging only for 
    successful file reads from the TFTP server.

eod

ATTR: file-cache
ATTRID: 39
ATTRHDRNAME: AO_TFTPSERVER_FILE_CACHING
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRMCDPATH: TftpFileCache
ATTRVIZ: 5
ATTRDESC:: eod
Specifies whether the TFTP server should perform file caching on
files located in the file-cache-directory.
eod

ATTR: file-cache-directory
ATTRID: 40
ATTRHDRNAME: AO_TFTPSERVER_CACHE_DIRECTORY
ATTRTYPE: AT_STRING
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: TftpCacheDirectory
ATTRVIZ: 5
ATTRDESC:: eod
Specifies a path to a cache directory the TFTP server will use to
find the files to put into cache.  Upon start up the TFTP server will
load all the files located in this directory into cache.
eod

ATTR: min-working-set-size
ATTRID: 41
ATTRHDRNAME: AO_TFTPSERVER_MINWORKINGSETSIZE
ATTRTYPE: AT_RANGEINT(1-2147483647)
ATTRMCDPATH: TftpMinWorkingSetSize
ATTRVIZ: 3
ATTRDESC:: eod
For NT platforms, defines the server's minimum working set size.
eod

ATTR: max-working-set-size
ATTRID: 42
ATTRHDRNAME: AO_TFTPSERVER_MAXWORKINGSETSIZE
ATTRTYPE: AT_RANGEINT(1-2147483647)
ATTRMCDPATH: TftpMaxWorkingSetSize
ATTRVIZ: 3

ATTR: file-cache-max-memory-size
ATTRID: 43
ATTRHDRNAME: AO_TFTPSERVER_FILE_CACHE_MAX_MEM_SIZE
ATTRTYPE: AT_RANGEINT(0-2147483647)
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: 32000
ATTRMCDPATH: TftpFileCacheMaxMemSize
ATTRVIZ: 5
ATTRDESC:: eod
Specifies the maximum amount of memory (in bytes) that the server can
use for file-caching.
Valid range: 0-2147483647
eod

ATTR: write-allow-file-create
ATTRID: 44
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRDEFVAL: false
ATTRMCDPATH: TftpWriteAllowFileCreate
ATTRVIZ: 5
ATTRDESC:: eod
Specifies whether to allow file creates on a PUT.  If false and
write-access equals true, the file must exist on the server for the
PUT to succeed.  If true and write-access is true, then the file does
not need to exist on the server first and will be created on a PUT.
max-inbound-file-size will apply a limit to the size of the file.
eod

ATTR: max-tftp-sessions
ATTRID: 45 
ATTRTYPE: AT_RANGEINT(1-1000)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 512 
ATTRMCDPATH: TftpMaximumNumberOfNewSessions
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the maximum number of simultaneous TFTP sessions the TFTP
server will support.  If this limit is reached, the server logs an
error message and drops subsequent TFTP requests until one of the
current sessions has completed.
eod

#
# CLASS: TFTPServerStats
# Note that in processing this object (for the time being), the
# mcdsvr is highly dependent on the ordering of these attributes. 
# If they got moved around at all or re-ordered, it could cause subtle 
# inaccuracies in the reporting of stats. 
#
CLASS: TFTPServerStats
CLASSID: 1301
CLASSDESC:: eod
A genobj version of the global stats available from the TFTP server.
eod

ATTR: id
ATTRID: 1
ATTRTYPE: AT_STRING
ATTRDESC:: eod
A string that identifies the TFTP server.
eod

ATTR: server-start-time
ATTRID: 2
ATTRTYPE: AT_DATE
ATTRDESC:: eod
Integer representing the start time of the server.
eod

ATTR: server-reset-time
ATTRID: 3
ATTRTYPE: AT_DATE
ATTRDESC:: eod
Integer representing the reset time of the server. 
eod

ATTR: server-state
ATTRID: 4
ATTRTYPE: AT_INT
ATTRDESC:: eod
Integer representing the state of the server. 
eod

ATTR: server-time-since-start
ATTRID: 5
ATTRTYPE: AT_TIME
ATTRDESC:: eod
Time the server has been running since last start.
eod

ATTR: server-time-since-reset
ATTRID: 6
ATTRTYPE: AT_TIME
ATTRDESC:: eod
Time the server has been running since last reset(reload).
eod

ATTR: total-packets-in-pool
ATTRID: 7
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of total packets in pool.
eod

ATTR: total-packets-in-use
ATTRID: 8
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of packets being used by the server.
eod

ATTR: total-packets-received
ATTRID: 9
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of packets received by the server since start/reload. 
eod

ATTR: total-packets-sent
ATTRID: 10
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of packets server has sent since start/reload.
eod

ATTR: total-packets-drained
ATTRID: 11
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of packets drained (read and discarded) since 
last start/reload.  A packet is drained when the TFTP server 
is overwhelmed and is using all its packets already, so there
are no more available to process the incoming packet. 
eod

ATTR: total-packets-dropped
ATTRID: 12
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of packets that server has dropped since start/reload.
This includes packets that are unknown to the server, malformed, 
duplicated, drained, and so on (basically any packet that is 
dropped for any reason).
eod

ATTR: total-packets-malformed
ATTRID: 13
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of packets the server has received that were malformed 
since start/reload.
eod

ATTR: total-read-requests
ATTRID: 14
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of packets the server has received that were
read requests since start/reload.
eod

ATTR: total-read-requests-completed
ATTRID: 15
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of read requests that were completed since start/reload.
eod

ATTR: total-read-requests-refused
ATTRID: 16
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of read requests that the server refused
since start/reload.
eod

ATTR: total-read-requests-ignored
ATTRID: 17
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of read requests that the server ignored
since start/reload.
eod

ATTR: total-read-requests-timed-out
ATTRID: 18
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of read requests that timed out since start/reload.
eod

ATTR: total-write-requests
ATTRID: 19
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of packets the server has received that were write requests
since start/reload.
eod

ATTR: total-write-requests-completed
ATTRID: 20
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of write requests that were completed since start/reload.
eod

ATTR: total-write-requests-refused
ATTRID: 21
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of write requests that the server refused
since start/reload.
eod

ATTR: total-write-requests-ignored
ATTRID: 22
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of write requests that the server ignored
since start/reload.
eod

ATTR: total-write-requests-timed-out
ATTRID: 23
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of write requests that timed out since start/reload.
eod

ATTR: total-docsis-requests
ATTRID: 24
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of packets the server has received that were docsis
requests since start/reload.
eod

ATTR: total-docsis-requests-completed
ATTRID: 25
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of docsis requests that were completed
since start/reload.
eod

ATTR: total-docsis-requests-refused
ATTRID: 26
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of docsis requests that the server refused
since start/reload.
eod

ATTR: total-docsis-requests-ignored
ATTRID: 27
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of docsis requests that the server ignored
since start/reload.
eod

ATTR: total-docsis-requests-timed-out
ATTRID: 28
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of docsis requests that timed out since start/reload.
eod

ATTR: read-requests-per-second
ATTRID: 29 
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of read requests per second. 
eod

ATTR: write-requests-per-second
ATTRID: 30 
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of write requests per second.
eod

ATTR: docsis-requests-per-second
ATTRID: 31
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of docsis requests per second.
eod

ATTR: total-session-heap-size
ATTRID: 32
ATTRTYPE: AT_INT
ATTRDESC:: eod
Size of session heap.
eod

ATTR: max-session-heap-size
ATTRID: 33 
ATTRTYPE: AT_INT
ATTRDESC:: eod
Maximum size the session heap can grow to. 
eod

#
# the rest of these attrs are not currently populated by the server
# these attrs complete the structure located in tftppublic.h 
#
ATTR: dynamic-requests-per-second
ATTRID: 34
ATTRTYPE: AT_INT
ATTRDESC:: eod
Number of dynamic requests received per second.
eod


ATTR: total-dynamic-requests
ATTRID: 35
ATTRTYPE: AT_INT
ATTRDESC:: eod
The number of packets the server has received that were
dynamic requests since start/reload.
eod

ATTR: total-dynamic-requests-completed
ATTRID: 36 
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of dynamic requests that were completed
since start/reload.
eod

ATTR: total-dynamic-requests-refused
ATTRID: 37 
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of dynamic requests that the server refused
since start/reload. 
eod

ATTR: total-dynamic-requests-ignored
ATTRID: 38 
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of dynamic requests that the server ignored
since start/reload.
eod

ATTR: total-dynamic-requests-timed-out
ATTRID: 39
ATTRTYPE: AT_INT
ATTRDESC:: eod
Total number of dynamic requests that timed out since start/reload.
eod

ATTR: time-from-received-to-start
ATTRID: 40
ATTRTYPE: AT_TIME
ATTRDESC:: eod
The time that has elapsed between receiving the packet to the start
of  processing it. 
eod

ATTR: time-from-received-to-finish
ATTRID: 41
ATTRTYPE: AT_TIME
ATTRDESC:: eod
The time that has elapsed between receiving the packet to finishing 
processing it. 
eod

ATTR: time-from-start-to-finish
ATTRID: 42
ATTRTYPE: AT_TIME
ATTRDESC:: eod
The time that has elapsed between starting to process the packet to 
finishing processing the packet. 
eod

ATTR: last-stats-update
ATTRID: 43
ATTRTYPE: AT_TIME
ATTRDESC:: eod
The last time the statistics were updated.
eod

ATTR: last-read-requests
ATTRID: 44
ATTRTYPE: AT_TIME
ATTRDESC:: eod
A benchmark number, it's used to show what the total number of 
TFTP read requests were the last time the statistics were retrieved
from the server. Does not hold across reloads. 
eod

ATTR: last-write-requests
ATTRID: 45
ATTRTYPE: AT_TIME
ATTRDESC:: eod
A benchmark number, it's used to show what the total number of 
TFTP write requests were the last time the statistics were retrieved
from the server. Does not hold across reloads. 
eod

ATTR: last-docsis-requests
ATTRID: 46
ATTRTYPE: AT_TIME
ATTRDESC:: eod
A benchmark number, it's used to show what the total number of 
TFTP docsis requests were the last time the statistics were retrieved
from the server. Does not hold across reloads. 
eod

ATTR: last-dynamic-requests
ATTRID: 47
ATTRTYPE: AT_TIME
ATTRDESC:: eod
A benchmark number, it's used to show what the total number of 
TFTP dynamic requests were the last time the statistics were retrieved
from the server. Does not hold across reloads. 
eod

CLASS: OptionInformation
CLASSID: 1302
CLASSVIZ: 3
CLASSDESC:: eod
The object is used for export/import of the option information
(custom options, vendor options, and option data types).
eod

ATTR: optdescs
ATTRID: 1
ATTRTYPE: AT_NLIST(AT_OBJ(OptDesc))
# 1<<16 | 1110
ATTRVAL: 66646
ATTRDESC:: eod
The option description objects, known as custom options.
eod

#
# includes nlist of OptionDataType-Field
#
ATTR: option-data-types
ATTRID: 2
ATTRTYPE: AT_NLIST(AT_OBJ(OptionDataType))
# 1<<16 | 1121
ATTRVAL: 66657

ATTRDESC:: eod
The option data type objects.
eod

#
# includes nlist of VendorSubOptions
#
ATTR: vendor-options
ATTRID: 3
ATTRTYPE: AT_NLIST(AT_OBJ(VendorOption))
# 1<<16 | 1123
ATTRVAL: 66659
ATTRDESC:: eod
The vendor option objects.
eod

#####################################################################
# CLASSID RANGE Campus Manager (CM) classes 1400 - 1599
# defined in ccm_datadict
######################################################################


#####################################################################
# CLASSID RANGE CNRSNMP Server (CS) classes 1600 - 1699
#
######################################################################

#
# CNRSNMP Server class
#

CLASS: SNMPServer
CLASSROOT: SNMPSRV
CLASSID: 1600
CLASSNAME: 1
CLASSVIZ: 5
CLASSDESC:: eod
The CNR SNMP server class.
eod

ATTR: name
ATTRID: 1
ATTRTYPE: AT_STRING
ATTRDEFVAL: CNRSNMP
ATTRDESC:: eod
The name of the server (constant for now).
eod

ATTR: log-settings
ATTRID: 2
ATTRTYPE: AT_FLAGSINT(default=1, no-success-messages=2, incoming-packet-detail=3, outgoing-packet-detail=5, scp-detail=6, snmp-detail=7)
ATTRDEFVAL: default
ATTRDESC:: eod
Configuration for log messages. The server logs more or fewer messages
depending on this parameter.
eod

ATTR: snmp-port
ATTRID: 3
ATTRTYPE: AT_RANGEINT(0-65535)
ATTRDEFVAL: 4444
ATTRDESC:: eod
The port to listen on for incoming SNMP queries.
eod

ATTR: scp-port
ATTRID: 4
ATTRTYPE: AT_RANGEINT(0-65535)
ATTRDESC:: eod
The port to listen on for incoming SCP messages. The default is for
the server to select an arbitrary port.
eod

ATTR: interfaces
ATTRID: 5
ATTRTYPE: AT_NLIST(AT_OBJ(Interface))
ATTRDESC:: eod
A specific interface or list of interfaces on which to listen for SNMP
queries.
eod

ATTR: server-active
ATTRID: 6
ATTRTYPE: AT_BOOL
ATTRDEFVAL: true
ATTRDESC:: eod
If 'true', the server will run when it is started. If 'false', the
serve will not run when it is started.
eod

ATTR: scp-retry-interval
ATTRID: 7
ATTRTYPE: AT_RANGETIME(1s-1h)
ATTRDEFVAL: 5s
ATTRDESC:: eod
The interval to use when trying to establish an SCP connection to the
co-located CCM server.
eod

ATTR: db-checkpt-interval
ATTRID: 8
ATTRTYPE: AT_RANGETIME(0-24h)
ATTRDEFVAL: 300
ATTRDESC:: eod
The interval between database checkpoints.
eod

ATTR: db-log-purge-interval
ATTRID: 9
ATTRTYPE: AT_RANGETIME(0-24h)
ATTRDEFVAL: 600
ATTRDESC:: eod
The interval between database logfile purges.
eod

ATTR: community
ATTRID: 10
ATTRTYPE: AT_STRING
ATTRDEFVAL: public
ATTRDESC:: eod
SNMP requests must present a matching community-string in order to be
processed by the SNMP server.
eod
