# $Id: cnr_datadict_5_5_11,v 1.1 2003/10/07 16:26:51 mjs Exp $
# 
# Copyright (C) 1995-2003 by Cisco Systems Inc.
# This program contains proprietary and confidential information.
# All rights reserved.
# 
# The data dictionary for genobj blobs. 
#
# This file is the authoratative description of the classes and attributes.
# It should be parsed by ao_parsedd.pl to generate ao_classdef_auto.h.  The
# other ao_classdef_<category>.h files are deprecated and should be ignored.
#
# 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
# <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.
#
SCHEMA: 1.1.13

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


CLASS: String
CLASSROOT: STRING
CLASSID: 1
CLASSNAME: 1
CLASSVIZ: 0
CLASSDESC:: eod
The String class is a simple way to treat a literal string like an object.
It is mainly used in the regcmd CLI process.
eod

ATTR: value
ATTRID: 1
ATTRHDRNAME: AO_STRING_VALUE
ATTRTYPE: AT_STRING
ATTRMCDPATH: value

CLASS: Exception 
CLASSROOT: EXCEPTION
CLASSID: 3
CLASSNAME: 1
CLASSVIZ: 0
CLASSDESC:: eod
The Exception class is used in the regcmd CLI process to denote an
exceptional (error) return value.
eod

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

ATTR: status
ATTRID: 2
ATTRHDRNAME: AO_EXCEPTION_STATUS
ATTRTYPE: AT_INT
ATTRMCDPATH: status

ATTR: desc
ATTRID: 3
ATTRHDRNAME: AO_EXCEPTION_DESC
ATTRTYPE: AT_STRING
ATTRMCDPATH: desc

CLASS: AttrList 
CLASSROOT: ATTRLIST
CLASSID: 4
CLASSNAME: 2
CLASSVIZ: 0
CLASSDESC:: eod
The AttrList class is used in the regcmd CLI process to represent an attribute
that is a list of elements.
eod

ATTR: attrid
ATTRID: 1
ATTRHDRNAME: AO_ATTRLIST_ATTRID
ATTRTYPE: AT_INT
ATTRMCDPATH: attrid

ATTR: attrname
ATTRID: 2
ATTRHDRNAME: AO_ATTRLIST_ATTRNAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: attrname

ATTR: attrtype
ATTRID: 3
ATTRHDRNAME: AO_ATTRLIST_ATTRTYPE
ATTRTYPE: AT_INT
ATTRMCDPATH: attrtype

ATTR: ctx
ATTRID: 4
ATTRHDRNAME: AO_ATTRLIST_CTX
ATTRTYPE: AT_INT
ATTRMCDPATH: ctx

ATTR: dictp
ATTRID: 5
ATTRHDRNAME: AO_ATTRLIST_DICTP
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE
ATTRMCDPATH: dictp

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
ATTRHDRNAME: AO_CHANGE_ENTRY_OID
ATTRTYPE: AT_OID

ATTR: writeseq
ATTRID: 2
ATTRHDRNAME: AO_CHANGE_ENTRY_WSEQ
ATTRTYPE: AT_INT

ATTR: op
ATTRID: 3
ATTRHDRNAME: AO_CHANGE_ENTRY_OP
ATTRTYPE: AT_ENUMINT(null=0, add=1, del=2, mod=3, setItem=4, insItem=5, delItem=6)


ATTR: type
ATTRID: 4
ATTRHDRNAME: AO_CHANGE_ENTRY_TYPE
ATTRTYPE: AT_INT
ATTRDESC:: eod
The optional type of the attribute values being changed
eod

ATTR: attrid
ATTRID: 5
ATTRHDRNAME: AO_CHANGE_ENTRY_ATTRID
ATTRTYPE: AT_INT
ATTRDESC:: eod
The optional attribute id for simple attribute changes.  Either attrid or
path will be set
eod

ATTR: path
ATTRID: 6
ATTRHDRNAME: AO_CHANGE_ENTRY_PATH
ATTRTYPE: AT_BLOB
ATTRDESC:: eod
The optional attribute path for changes to nested values.  Either attrid or
path will be set.
eod

ATTR: old_val
ATTRID: 7
ATTRHDRNAME: AO_CHANGE_ENTRY_OLD_VAL
ATTRTYPE: AT_BLOB
ATTRDESC:: eod
The optional old value of the attribute or nested value in raw form.
eod

ATTR: new_val
ATTRID: 8
ATTRHDRNAME: AO_CHANGE_ENTRY_NEW_VAL
ATTRTYPE: AT_BLOB
ATTRDESC:: eod
The optional new value of the attribute or nested value in raw form.
eod


#
# UI Server protocol messages
#

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
ATTRHDRNAME: AO_MESSAGE_MSGID
ATTRTYPE: AT_INT

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

ATTR: function
ATTRID: 3
ATTRHDRNAME: AO_MESSAGE_FUNCTION
ATTRTYPE: AT_STRING

ATTR: refid
ATTRID: 4
ATTRHDRNAME: AO_MESSAGE_REFID
ATTRTYPE: AT_INT

ATTR: intval
ATTRID: 5
ATTRHDRNAME: AO_MESSAGE_INTVAL
ATTRTYPE: AT_INT

ATTR: strval
ATTRID: 6
ATTRHDRNAME: AO_MESSAGE_STRVAL
ATTRTYPE: AT_INT

ATTR: ipval
ATTRID: 7
ATTRHDRNAME: AO_MESSAGE_IPVAL
ATTRTYPE: AT_IPADDR

ATTR: oidval
ATTRID: 8
ATTRHDRNAME: AO_MESSAGE_OIDVAL
ATTRTYPE: AT_OID

# if we want to send a blob (rather than a message object) over the wire
ATTR: blobval
ATTRID: 9
ATTRHDRNAME: AO_MESSAGE_BLOBVAL
ATTRTYPE: AT_BLOB

ATTR: data
ATTRID: 10
ATTRHDRNAME: AO_MESSAGE_DATA
ATTRTYPE: AT_OBJ(0)

ATTR: status
ATTRID: 20
ATTRHDRNAME: AO_MESSAGE_STATUS
ATTRTYPE: AT_INT

ATTR: statstr
ATTRID: 21
ATTRHDRNAME: AO_MESSAGE_STATSTR
ATTRTYPE: AT_STRING


CLASS: DataSet
CLASSROOT: DATASET
CLASSID: 7
CLASSNAME: 5
CLASSVIZ: 0
CLASSDESC:: eod
The DataSet class is used to describe possibly large collections of objects.
eod

ATTR: classid
ATTRID: 1
ATTRHDRNAME: AO_DATASET_CLASSID
ATTRTYPE: AT_INT
ATTRMCDPATH: classid

ATTR: len
ATTRID: 2
ATTRHDRNAME: AO_DATASET_LEN
ATTRTYPE: AT_INT
ATTRMCDPATH: len

ATTR: seq
ATTRID: 3
ATTRHDRNAME: AO_DATASET_SEQ
ATTRTYPE: AT_INT
ATTRMCDPATH: seq

#
# the mcd path to the root of this list
#
ATTR: mcd-path
ATTRID: 4
ATTRHDRNAME: AO_DATASET_MCDPATH
ATTRTYPE: AT_STRING
ATTRMCDPATH: mcd-path

#
# the name of the list
#
ATTR: name
ATTRID: 5
ATTRHDRNAME: AO_DATASET_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name

#
# the server side cookie
#
ATTR: server-ptr
ATTRID: 6
ATTRHDRNAME: AO_DATASET_SERVERPTR
ATTRTYPE: AT_BLOB
ATTRMCDPATH: server-ptr

#
# the client side cookie
#
ATTR: client-ptr
ATTRID: 7
ATTRHDRNAME: AO_DATASET_CLIENTPTR
ATTRTYPE: AT_BLOB
ATTRMCDPATH: client-ptr

#
# the parent of this list for contained lists
#
ATTR: parent
ATTRID: 8
ATTRHDRNAME: AO_DATASET_PARENT
ATTRTYPE: AT_OID
ATTRMCDPATH: parent

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

ATTR: old-exclusion-mask
ATTRID: 7
ATTRHDRNAME: AO_CE_EXCLUSION_MASK
ATTRTYPE: AT_INT
ATTRMCDPATH: exclusion-mask
ATTRVIZ: 3

ATTR: name
ATTRID: 8
ATTRHDRNAME: AO_CE_NAME
ATTRTYPE: AT_STRING
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
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.

The time value should be entered using the local time of the nrcmd
process.
eod

ATTR: authentication-sequence
ATTRID: 10
ATTRHDRNAME: AO_CE_AUTHENTICATION_SEQUENCE
ATTRTYPE: AT_INT
ATTRMCDPATH: authentication-sequence
ATTRVIZ: 3

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 considerable 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


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: 3
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


# 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_ENUMINT(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

# 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
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: 3

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


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

ATTR: dhcp-port
ATTRID: 13
ATTRHDRNAME: AO_INTERFACE_DHCPPORT
ATTRTYPE: AT_INT
ATTRMCDPATH: DHCPPort
ATTRFEAT: type == DHCP
ATTRVIZ: 3

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


#
# db config object: contains config information for a server's
# private database - probably a sleepycat database.
#

CLASS: DbConfig
CLASSROOT: DBCONFIG
CLASSID: 53
CLASSVIZ: 5
CLASSDESC:: eod
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_ARRAY(AT_INT)
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

#
# end of DBCONFIG class
#


#
# DNS 'foreign' server object
#

CLASS: ForeignServer 
CLASSROOT: DNS_FS
CLASSID: 100
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
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(1-32)
ATTRMCDPATH: mask
ATTRVIZ: 3
ATTRDESC:: eod
Specifies the number of bits in the addr 
attribute that are significant.
Validation: [0,32]
eod
# THIS 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
CLASSNAME: 1
CLASSVIZ: 5
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 Message data classes 201 - 211
#
# These classes will only show up in the RPC messages

CLASS: MsgHello
CLASSID: 201
CLASSROOT: MSGHELLO
CLASSVIZ: 0

# the auto-generator is not very smart about empty attribute lists
ATTR: none
ATTRID: 1
ATTRHDRNAME: AO_MSGHELLO_NONE
ATTRTYPE: AT_STRING
ATTRMCDPATH: none

ATTR: version 
ATTRID: 2
ATTRHDRNAME: AO_MSGHELLO_VERSION
ATTRTYPE: AT_INT
ATTRMCDPATH: version 

ATTR: min-version 
ATTRID: 3
ATTRHDRNAME: AO_MSGHELLO_MIN_VERSION
ATTRTYPE: AT_INT
ATTRMCDPATH: min-version 

ATTR: challenge
ATTRID: 4
ATTRHDRNAME: AO_MSGHELLO_CHALLENGE
ATTRTYPE: AT_BLOB
ATTRMCDPATH: challenge

ATTR: lic-req
ATTRID: 10
ATTRHDRNAME: AO_MSGHELLO_LIC_REQ
ATTRTYPE: AT_BOOL
ATTRMCDPATH: lic-req

#
# For the Client-Init message
#

CLASS: MsgClientInit
CLASSID: 202
CLASSROOT: MSGCLIENTINIT
CLASSVIZ: 0

ATTR: user
ATTRID: 1
ATTRHDRNAME: AO_MSGCLIENTINIT_USER
ATTRTYPE: AT_STRING
ATTRMCDPATH: user

# this is not going to be sent in the clear for long
ATTR: password
ATTRID: 2
ATTRHDRNAME: AO_MSGCLIENTINIT_PASSWORD
ATTRTYPE: AT_STRING
ATTRMCDPATH: password

# who does the client think this person is (sudduth@kobuk, \\AIC\sudduth)
ATTR: localid
ATTRID: 3
ATTRHDRNAME: AO_MSGCLIENTINIT_LOCALID
ATTRTYPE: AT_STRING
ATTRMCDPATH: localid

#
# For the Get-Root-Info message
#
CLASS: MsgRootInfo
CLASSID: 203
CLASSROOT: MSGROOTINFO
CLASSNAME: 1
CLASSVIZ: 0

ATTR: cluster-name
ATTRID: 1
ATTRHDRNAME: AO_MSGROOTINFO_CLUSTER_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: cluster-name

ATTR: info-list
ATTRID: 2
ATTRHDRNAME: AO_MSGROOTINFO_INFOLIST
# really an info structure (cid, OID, name)
ATTRTYPE: AT_ARRAY(AT_BLOB)
ATTRMCDPATH: info-list

ATTR: obj-list
ATTRID: 3
ATTRHDRNAME: AO_MSGROOTINFO_OBJLIST
ATTRTYPE: AT_ARRAY(AT_OBJ(0))
ATTRMCDPATH: obj-list

#
# For the Apply-Changes message
# NOTE that the class name is ChangeSet, not MsgApplyChangeSet
#
CLASS: ChangeSet
CLASSID: 204
CLASSROOT: CHANGESET
CLASSVIZ: 0

ATTR: wseq
ATTRID: 1
ATTRHDRNAME: AO_CHANGESET_WSEQ
ATTRTYPE: AT_INT

ATTR: change-list
ATTRID: 2
ATTRHDRNAME: AO_CHANGESET_CHANGE_LIST
ATTRTYPE: AT_NLIST(AT_OBJ(ChangeEntry))
ATTRMCDPATH: change-list
ATTRVAL: 5

ATTR: state
ATTRID: 3
ATTRHDRNAME: AO_CHANGESET_STATE
ATTRTYPE: AT_ENUMINT(none=0, init=1, applied=2, error=3);
ATTRMCDPATH: state

#
# What generation of the database do these apply to
#
ATTR: generation
ATTRID: 4
ATTRHDRNAME: AO_CHANGESET_DBGEN
ATTRTYPE: AT_INT
ATTRMCDPATH: generation

#
# When were these changes made
#
ATTR: change-date
ATTRID: 5
ATTRHDRNAME: AO_CHANGESET_CHANGE_DATE
ATTRTYPE: AT_DATE
ATTRMCDPATH: change-date

#
# Who made these changes
#
ATTR: admin-name
ATTRID: 6
ATTRHDRNAME: AO_CHANGESET_ADMIN_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: admin-name

#
# TRANSIENT
# results of applying this change set
#
ATTR: result-list
ATTRID: 10
# really an info structure (??)
ATTRHDRNAME: AO_CHANGESET_RESULT_LIST
ATTRTYPE: AT_ARRAY(AT_BLOB)
ATTRMCDPATH: result-list

#
# For the ReserveOIDs message
# NOTE that the class name is ChangeSet, not MsgApplyChangeSet
#
CLASS: MsgReserveOID
CLASSID: 205
CLASSROOT: RESERVEOID
CLASSVIZ: 0

# number of OIDs needed
ATTR: needed
ATTRID: 1
ATTRHDRNAME: AO_RESERVEOID_NEEDED
ATTRTYPE: AT_INT
ATTRMCDPATH: needed

ATTR: base
ATTRID: 2
ATTRHDRNAME: AO_RESERVEOID_BASE
ATTRTYPE: AT_OID
ATTRMCDPATH: base

ATTR: len
ATTRID: 3
ATTRHDRNAME: AO_RESERVEOID_LEN
ATTRTYPE: AT_INT
ATTRMCDPATH: len

# the ranges of OID values returned.  The blobs are 8 bytes of OID and
# two bytes of length

ATTR: ranges
ATTRID: 4
ATTRHDRNAME: AO_RESERVEOID_RANGES
ATTRTYPE: AT_ARRAY(AT_BLOB)
ATTRMCDPATH: ranges

CLASS: MsgGetObj
CLASSID: 206
CLASSVIZ: 0

CLASS: MsgGetClassList
CLASSID: 207
CLASSVIZ: 0

#
CLASS: MsgDSgetRange
CLASSID: 208
CLASSROOT: DSGETRANGE
CLASSVIZ: 0

ATTR: attr
ATTRID: 2
ATTRHDRNAME: AO_DSGETRANGE_ATTR
ATTRTYPE: AT_INT
ATTRMCDPATH: attr

ATTR: start
ATTRID: 3
ATTRHDRNAME: AO_DSGETRANGE_START
ATTRTYPE: AT_INT
ATTRMCDPATH: start

ATTR: len
ATTRID: 4
ATTRHDRNAME: AO_DSGETRANGE_LEN
ATTRTYPE: AT_INT
ATTRMCDPATH: len

ATTR: objvec
ATTRID: 5
ATTRHDRNAME: AO_DSGETRANGE_OBJVEC
ATTRTYPE: AT_ARRAY(AT_OBJ(0))
ATTRMCDPATH: objvec

ATTR: wseq
ATTRID: 6
ATTRHDRNAME: AO_DSGETRANGE_WSEQ
ATTRTYPE: AT_INT
ATTRMCDPATH: wseq

CLASS: MsgEnterLicense
CLASSID: 209
CLASSROOT: MSGENTERLICENSE
CLASSVIZ: 0

ATTR: key
ATTRID: 1
ATTRHDRNAME: AO_MSGENTERLICENSE_KEY
ATTRTYPE: AT_STRING
ATTRMCDPATH: key

CLASS: SrvGetHealth
CLASSID: 210
CLASSROOT: SRVGETHEALTH
CLASSVIZ: 0

ATTR: health
ATTRID: 1
ATTRHDRNAME: AO_SRVGETHEALTH_HEALTH
ATTRTYPE: AT_INT
ATTRMCDPATH: health

ATTR: state
ATTRID: 2
ATTRHDRNAME: AO_SRVGETHEALTH_STATE
ATTRTYPE: AT_INT
ATTRMCDPATH: state

CLASS: SrvStart
CLASSID: 211
CLASSROOT: SRVSTART
CLASSVIZ: 0

ATTR: log
ATTRID: 1
ATTRHDRNAME: AO_SRVSTART_LOG
ATTRTYPE: AT_ARRAY(AT_STRING)
ATTRMCDPATH: log


# CLASSID RANGE SCP Message classes 300 - 500
#
# SCP Protocol Message Classes
#
# The current plan is that there will be one class per unique set of
# params to an SCP message; messages which differ only by message name
# or by which params are required can map onto the same class.
#
# The messages' classes' names are generated as ("SCP" + messagename)
#

CLASS: SCPMessage 
CLASSROOT: SCPMESSAGE
CLASSID: 300
CLASSNAME: 3
CLASSVIZ: 3
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.
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
ATTRMCDPATH: ipval


CLASS: SCPCHANGEENTRY 
CLASSROOT: SCPCENTRY
CLASSID: 301
CLASSVIZ: 3
CLASSNAME: 1
CLASSDESC:: eod
The ScpChangeEntry object describes a change to a single object. These
are grouped into change sets and included in SCP messages.
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_SCPCENTRY_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRDESC:: eod
eod

ATTR: op
ATTRID: 2
ATTRHDRNAME: AO_SCPCENTRY_OP
ATTRTYPE: AT_INT
ATTRMCDPATH: op
ATTRDESC:: eod
eod

ATTR: parent
ATTRID: 3
ATTRHDRNAME: AO_SCPCENTRY_PARENT
ATTRTYPE: AT_OID
ATTRMCDPATH: parent
ATTRDESC:: eod
eod

ATTR: attrid
ATTRID: 4
ATTRHDRNAME: AO_SCPCENTRY_ATTRID
ATTRTYPE: AT_INT
ATTRMCDPATH: attrid
ATTRDESC:: eod
eod

#
# index into a list attr
#
ATTR: index
ATTRID: 5
ATTRHDRNAME: AO_SCPCENTRY_INDEX
ATTRTYPE: AT_INT
ATTRMCDPATH: index
ATTRDESC:: eod
eod

#
# arg list appropriate to the type of change in 'op'
#
ATTR: avlist 
ATTRID: 6
ATTRHDRNAME: AO_SCPCENTRY_AVLIST
ATTRTYPE: AT_ARRAY(AT_BLOB)
ATTRMCDPATH: avlist 
ATTRDESC:: eod
eod

#
# for nested objects, the attribute id of our parent
# 
ATTR: parent-attr
ATTRID: 7
ATTRHDRNAME: AO_SCPCENTRY_PARENT_ATTR
ATTRTYPE: AT_INT
ATTRMCDPATH: parent-attr
ATTRDESC:: eod
eod

#
# for dictionaries, the key of the affected element
#
ATTR: key
ATTRID: 8
ATTRHDRNAME: AO_SCPCENTRY_KEY
ATTRTYPE: AT_STRING
ATTRMCDPATH: key
ATTRDESC:: eod
eod
# SCPCENTRY ends


#
# The SCP ChangeSet class: change sets collect change entries
# that refer to a single object.
#
CLASS: SCPCHANGESET
CLASSID: 302
CLASSROOT: SCPCSET
CLASSVIZ: 1

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_SCPCSET_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRDESC:: eod
eod

ATTR: change-list
ATTRID: 2
ATTRHDRNAME: AO_SCPCSET_CHANGE_LIST
ATTRTYPE: AT_ARRAY(AT_STRUCT(SCPCENTRY))
ATTRMCDPATH: change-list
ATTRDESC:: eod
eod

#
# What version of the data dictionary do these apply to?
# (DEPRECATED?)
#
ATTR: schema
ATTRID: 3
ATTRHDRNAME: AO_SCPCSET_SCHEMA
ATTRTYPE: AT_INT
ATTRMCDPATH: schema
ATTRVIZ: 1
ATTRDESC:: eod
eod

#
# What 'generation' number do these changes apply to. This might be a
# DNS Zone generation, e.g.
#
ATTR: generation
ATTRID: 4
ATTRHDRNAME: AO_SCPCSET_GENERATION
ATTRTYPE: AT_INT
ATTRMCDPATH: generation
ATTRDESC:: eod
eod

#
# When were these changes made (TODO - s.b. MSTIME?)
#
ATTR: change-date
ATTRID: 5
ATTRHDRNAME: AO_SCPCSET_CHANGE_DATE
ATTRTYPE: AT_DATE
ATTRMCDPATH: change-date
ATTRDESC:: eod
eod

#
# Who made these changes
#
ATTR: admin-name
ATTRID: 6
ATTRHDRNAME: AO_SCPCSET_ADMIN_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: admin-name
ATTRDESC:: eod
eod

# the write sequence that the client has seen
ATTR: wseq
ATTRID: 7
ATTRHDRNAME: AO_SCPCSET_WSEQ
ATTRTYPE: AT_INT
ATTRMCDPATH: wseq
ATTRDESC:: eod
eod

# the oid that the client has recorded
ATTR: oid
ATTRID: 8
ATTRHDRNAME: AO_SCPCSET_OID
ATTRTYPE: AT_OID
ATTRMCDPATH: oid
ATTRDESC:: eod
eod

#
# TRANSIENT
# a place to store results as we apply this changeset
#
ATTR: result-list
ATTRID: 10
# really an info structure (??)
ATTRHDRNAME: AO_SCPCSET_RESULT_LIST
ATTRTYPE: AT_ARRAY(AT_BLOB)
ATTRMCDPATH: result-list
ATTRDESC:: eod
eod

# the write sequence after changes in this change set were applied
ATTR: new-wseq
ATTRID: 11
ATTRHDRNAME: AO_SCPCSET_NEW_WSEQ
ATTRTYPE: AT_INT
ATTRMCDPATH: new-wseq
ATTRDESC:: eod
eod

ATTR: class
ATTRID: 12
ATTRHDRNAME: AO_SCPCSET_CLASS
ATTRTYPE: AT_INT
ATTRMCDPATH: class
ATTRDESC:: eod
eod
# SCPCSET ends


#
# The SCP Session class: a session represents a connection between
# a server and a single client
#
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
ATTRDESC:: eod
eod

#
# CLASSID RANGE Common database classes 1000 - 1099
#

CLASS: Cluster
CLASSROOT: CLUSTER
CLASSID: 1000
CLASSNAME: 1
CLASSVIZ: 3
CLASSDESC:: eod
The cluster object
eod

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

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
ATTRHDRNAME: AO_ADMIN_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRVIZ: 3
ATTRDESC:: eod
The name of this administrator.
eod

ATTR: password
ATTRID: 2
ATTRHDRNAME: AO_ADMIN_PASSWORD
ATTRTYPE: AT_ESTRING
ATTRMCDPATH: password
ATTRVIZ: 5
ATTRDESC:: eod
The password for this administrator.
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
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
ATTRVIZ: 5
ATTRDESC:: eod
The optional IP port number of this trap 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 2.0, 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
ATTRVIZ: 3

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
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
ATTRMCDPATH: MinimumClientPacketSize
ATTRVIZ: 3

ATTR: num-ping-threads
ATTRID: 8
ATTRHDRNAME: AO_DHCPSERVER_NUMBEROFPINGSERVERTHREADS
ATTRTYPE: AT_INT
ATTRMCDPATH: NumberOfPingServerThreads
ATTRVIZ: 3

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

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

ATTR: timer-thread-heap-size
ATTRID: 11
ATTRHDRNAME: AO_DHCPSERVER_TIMERQUEUETHREADHEAPSIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: TimerQueueThreadHeapSize
ATTRVIZ: 3

ATTR: udp-packet-size
ATTRID: 12
ATTRHDRNAME: AO_DHCPSERVER_UDPPACKETSIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: UDPPacketSize
ATTRVIZ: 3

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: 100
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: 2
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

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
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 )
ATTRFLAGS: AF_INITIALIZE
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 
analysing 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
ATTRVIZ: 3

ATTR: max-working-set-size
ATTRID: 29
ATTRHDRNAME: AO_DHCPSERVER_MAXWORKINGSETSIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: MaxWorkingSetSize
ATTRVIZ: 3

ATTR: scope-selection-tags
ATTRID: 30
ATTRHDRNAME: AO_DHCPSERVER_ATTRIBUTES
ATTRTYPE: AT_SET(AT_STRING)
ATTRMCDPATH: attributes
ATTRVIZ: 5
ATTRDESC:: eod
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: 3

ATTR: clientclasses
ATTRID: 32
ATTRHDRNAME: AO_DHCPSERVER_CLIENTCLASSES
ATTRTYPE: AT_LISTREF(ClientEntry)
ATTRMCDPATH: clientclasses
ATTRVAL: 1106
ATTRVIZ: 3

ATTR: scopes
ATTRID: 33	
ATTRHDRNAME: AO_DHCPSERVER_SCOPES
ATTRTYPE: AT_LISTREF(Scope)
ATTRMCDPATH: scopes
ATTRVAL: 1101
ATTRVIZ: 3

ATTR: policies
ATTRID: 34	
ATTRHDRNAME: AO_DHCPSERVER_POLICIES
ATTRTYPE: AT_LISTREF(Policy)
ATTRMCDPATH: policies
ATTRVAL: 1102
ATTRVIZ: 3

ATTR: interfaces
ATTRID: 35	
ATTRHDRNAME: AO_DHCPSERVER_INTERFACES
ATTRTYPE: AT_ARRAY(AT_STRUCT(Interface))
ATTRFLAGS: AF_NOTREE
ATTRMCDPATH: interfaces
ATTRVAL: 1104
ATTRVIZ: 3

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
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 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
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, and 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, 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.
See ensure-last-transaction-time for additional information.
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
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 server.  If it
is defined in a backup server, it is ignored (to enable copying of
configurations).
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: true
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: 3
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 thsi 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 drops 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,
which 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_INT
ATTRMCDPATH: map-user-class-id
ATTRFLAGS: AF_INITIALIZE
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
ATTRFLAGS: AF_INITIALIZE
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). Default value is TRUE.
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: 10
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
ATTRVIZ: 5
ATTRDESC:: eod
Controls whether the dhcp server will collect statistics for
the 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: 3
ATTRDESC:: eod
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
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: 3
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.  The default value is 8 seconds.
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
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: 300
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 least UNAVAILALBLE
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
eod

ATTR: scp-port
ATTRID: 147
ATTRHDRNAME: AO_DHCPSERVER_SCP_PORT
ATTRTYPE: AT_RANGEINT(0-65535)
ATTRMCDPATH: scp-port
ATTRVIZ: 3

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 
signalled 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
ATTRDESC:: eod
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: 3
ATTRDESC:: eod
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: state-db-lock-count
ATTRID: 168
ATTRHDRNAME: AO_DHCPSERVER_STATE_DB_LOCK_COUNT
ATTRTYPE: AT_INT
ATTRMCDPATH: state-db-lock-count
#ATTRDEFVAL: 10000
ATTRVIZ: 3
ATTRDESC:: eod
The state database must be configured with a lock count,
else the default of 1000 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 10000.  Set debug G=1 and stop 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: 0
ATTRVIZ: 3
ATTRDESC:: eod
Then maximum number of data items allowed within one transaction
in the lease state database.  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: 0
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.
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: report-active-buffers
ATTRID: 188
ATTRTYPE: AT_BOOL
ATTRDEFVAL: false
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.
eod


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

########################################
# 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
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)
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: Policy
ATTRDEFVAL: default
ATTRVAL: 1102
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)
ATTRMCDPATH: PrimaryScope
ATTRVAL: 1101
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 inverse (in.addr.arpa) zone that is updated with
PTR and TXT records.
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_BOOL
ATTRFLAGS: AF_FEATURE, AF_INITIALIZE
ATTRDEFVAL: false
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_INT
ATTRMCDPATH: DnsNumberOfHostBytes
ATTRVIZ: 3
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 dns-reverse-zone-name.
eod

ATTR: available-lease-hint-size
ATTRID: 20
ATTRHDRNAME: AO_SCOPE_AVAILABLELEASEHINTSIZE
ATTRTYPE: AT_INT
ATTRMCDPATH: AvailableLeaseHintSize
ATTRVIZ: 3

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

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

ATTR: ReservationList
ATTRID: 26
ATTRHDRNAME: AO_SCOPE_RESERVATIONLIST
ATTRTYPE: AT_LISTREF(Reservation)
ATTRMCDPATH: ReservationList
ATTRVAL: 1107
ATTRVIZ: 0

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

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

ATTR: LeaseList
ATTRID: 29
ATTRHDRNAME: AO_SCOPE_LEASELIST
ATTRTYPE: AT_LISTREF(Lease)
ATTRMCDPATH: LeaseList
ATTRVAL: 1108
ATTRVIZ: 0

# 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 server.  If it
is defined in a backup server, it is ignored (to enable copying of
configurations).
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 servers'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-??: 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, AF_INITIALIZE
ATTRDEFVAL: true
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

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 
ATTRVIZ: 3 

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 

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
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

# 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
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, AF_INITIALIZE
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: 3

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: 3 

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: 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

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

CLASS: Option
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
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
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

########################################
# L e a s e
# L E A S E
########################################

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 )
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.

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

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 issued 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
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

###############################
# End of L e a s e
#        L E A S E
###############################


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.
eod

CLASS: OptDesc
CLASSROOT: OPTDESC
CLASSID: 1110
CLASSNAME: 1
CLASSVIZ: 5
CLASSDESC:: eod
The description of a specific option number
eod

ATTR: printname
ATTRID: 1
ATTRHDRNAME: AO_OPTDESC_PRINTNAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: printname
ATTRVIZ: 3

ATTR: number
ATTRID: 2
ATTRHDRNAME: AO_OPTDESC_NUMBER
ATTRTYPE: AT_INT
ATTRMCDPATH: number
ATTRVIZ: 5

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
CLASSNAME: 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
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 seach 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
The number of seconds the DHCP server should wait for a response to
an individual query. After a query times out, the server may
re-try another LDAP server connection, or drop it.
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

CLASS: EventService
CLASSROOT: EVENTSERVICE
CLASSID: 1113
CLASSNAME: 2
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
CLASSVIZ: 5
CLASSDESC:: eod
Ask Mark
eod

# printable name
ATTR: print-name
ATTRID: 1
ATTRHDRNAME: AO_EVENTSERVICE_NAME
ATTRTYPE: AT_STRING
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
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

# the RemoteServers that this Service knows about
ATTR: remoteservers
ATTRID: 11
ATTRHDRNAME: AO_EVENTSERVICE_REMOTESERVERS
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

# 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-namespace-id
ATTRID: 25
ATTRHDRNAME: AO_DNSREQ_NEW_NAMESPACE_ID
ATTRTYPE: AT_INT
ATTRDESC:: eod
eod

ATTR: old-namespace-id
ATTRID: 26
ATTRHDRNAME: AO_DNSREQ_OLD_NAMESPACE_ID
ATTRTYPE: AT_INT
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 todate 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 tim when communications between failover servers was ok.
This timestamp will be maintained by the DHCP server and should not
be modified.
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


#
# dhcp option data-type class: used to describe vendor-specific
# option data
#

CLASS: OptionDataType-Field 
CLASSROOT: OPTIONDATATYPE_FIELD
CLASSID: 1120
CLASSNAME: 1
CLASSVIZ: 5

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
CLASSVIZ: 5

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_LISTREF(OptionDataType-Field)
ATTRMCDPATH: fields
ATTRVIZ: 3
ATTRDESC:: eod
The list of fields in the option-datatype.
eod

CLASS: VendorSubOption 
CLASSROOT: VENDORSUBOPTION
CLASSID: 1122
CLASSNAME: 1
CLASSVIZ: 5

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
CLASSVIZ: 5

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_VENDOROPTION_NAME
ATTRTYPE: AT_STRING
ATTRMCDPATH: name
ATTRVIZ: 5
ATTRDESC:: eod
The name of the vendor-option. vendor-option 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_LISTREF(VendorSubOption)
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
CLASSNAME: 1
CLASSVIZ: 5

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
CLASSNAME: 1
CLASSVIZ: 5

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
CLASSNAME: 1
CLASSVIZ: 5

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: Namespace
CLASSROOT: NAMESPACE
CLASSID: 1127
CLASSNAME: 1
CLASSKEY: 4
CLASSVIZ: 5
CLASSDESC:: eod
eod

ATTR: name
ATTRID: 1
ATTRHDRNAME: AO_NAMESPACE_NAME
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The namespace's name.
eod

ATTR: vpn-id
ATTRID: 2
ATTRHDRNAME: AO_NAMESPACE_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
ATTRHDRNAME: AO_NAMESPACE_VRFNAME
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The namespace's VRF name.
eod

ATTR: id
ATTRID: 4
ATTRHDRNAME: AO_NAMESPACE_ID
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED, AF_IMMUTABLE
ATTRDESC:: eod
The namespace's unique id.
eod

ATTR: description
ATTRID: 5
ATTRHDRNAME: AO_NAMESPACE_DESCRIPTION
ATTRTYPE: AT_STRING
ATTRDESC:: eod
The namespace's description.
eod

ATTR: addr-blocks-use-lan-segments
ATTRID: 6
ATTRHDRNAME: AO_NAMESPACE_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_NAMESPACE_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_NAMESPACE_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_NAMESPACE_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

#
# 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_IPNET
ATTRFLAGS: AF_REQUIRED
ATTRDESC:: eod
The address-block's IP 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
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)
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_IPNET
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
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

#
# CLASSID RANGE DNS classes 1200 - 1299
#

CLASS: DNSServer
CLASSROOT: DNSSERVER
CLASSID: 1200
CLASSNAME: 1
CLASSNAMEDESC:: eod
In Network Registrar 2.0, 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: 3
ATTRVAL: 1201

ATTR: secondaryzones
ATTRID: 3	
ATTRHDRNAME: AO_DNSSERVER_SECONDARYZONES
ATTRTYPE: AT_ARRAY(AT_NAMEREF(SecondaryZone))
ATTRMCDPATH: secondaryzones
ATTRVIZ: 3
ATTRVAL: 1210

ATTR: local-port-num
ATTRID: 10
ATTRHDRNAME: AO_DNSSERVER_LOCALPORT
ATTRTYPE: AT_RANGEINT(1-65535)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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, AF_REQUIRED
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, AF_REQUIRED
ATTRDEFVAL: false
ATTRMCDPATH: no_recurse
ATTRVIZ: 5
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,AF_REQUIRED
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

ATTR: lame-deleg-notify
ATTRID: 17
ATTRHDRNAME: AO_DNSSERVER_LAMEDELEGNOTIFY
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_PRINT_ONOFF,AF_FEATURE,AF_REQUIRED
ATTRDEFVAL: false
ATTRMCDPATH: lame_deleg_notify
ATTRVIZ: 5
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

ATTR: neg-cache-ttl
ATTRID: 18
ATTRHDRNAME: AO_DNSSERVER_NEGCACHETTL
ATTRTYPE: AT_RANGETIME(0-2147483647)
ATTRMCDPATH: neg_cache_ttl
ATTRFLAGS: AF_REQUIRED
ATTRVIZ: 5
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
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
ATTRVIZ: 5
ATTRDEFVAL: 200
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
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
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, AF_REQUIRED
ATTRDEFVAL: true
ATTRMCDPATH: defer_zone_load
ATTRVIZ: 1
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, AF_REQUIRED
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, AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
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, AF_REQUIRED
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_REQUIRED, AF_PRINT_ONOFF
ATTRVIZ: 3
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_REQUIRED, 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, AF_REQUIRED
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
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
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
ATTRVIZ: 1
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
ATTRFLAGS: AF_REQUIRED
ATTRVIZ: 1
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
ATTRFLAGS: AF_REQUIRED
ATTRVIZ: 1
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
ATTRFLAGS: AF_REQUIRED
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, AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
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, AF_REQUIRED
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, AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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 
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
ATTRVIZ: 1
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	
ATTRFLAGS: AF_REQUIRED
ATTRVIZ: 1
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	
ATTRFLAGS: AF_REQUIRED
ATTRVIZ: 1
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	
ATTRFLAGS: AF_REQUIRED
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	
ATTRFLAGS: AF_REQUIRED
ATTRVIZ: 3
ATTRDEFVAL: 1795
ATTRDESC:: eod
Bitmap indicating handling of invalid and improper-class 
resource records reveived 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
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 1000
ATTRMCDPATH: defer_wrt_interval
ATTRVIZ: 1
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, AF_REQUIRED
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, AF_REQUIRED
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, AF_REQUIRED
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, AF_REQUIRED
ATTRMCDPATH: hide_subzones
ATTRVIZ: 5
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

ATTR: static-address-pools
ATTRID: 61
ATTRHDRNAME: AO_DNSSERVER_STATIC_ADDRESS_POOLS
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_REQUIRED
ATTRDEFVAL: false
ATTRMCDPATH: static_address_pools
ATTRVIZ: 3
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
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_INITIALIZE
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
ATTRFLAGS: AF_INITIALIZE
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, AF_REQUIRED
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, AF_REQUIRED
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, AF_REQUIRED
ATTRDEFVAL: false
ATTRMCDPATH: simulate_zone_top_dynupdate
ATTRVIZ: 3
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
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 10,000KB, that is 10MB.

Validation: 200 <= x <= 50000 

eod

ATTR: changeset-db-cache-partitions
ATTRID: 75
ATTRHDRNAME: AO_DNSSERVER_CSETDB_CACHE_PARTITIONS
ATTRTYPE: AT_RANGEINT(1-5)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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
ATTRTYPE: AT_FLAGSINT( config=1, ddns=2, xfr-in=3, xfr-out=4, notify=5, query=6, packet=7, datastore=8, scavenge=9, scavenge-details=10, server-operations=11, forward=12, lame-delegation=13, root-query=14, ddns-refreshes=15, ddns-refreshes-details=16, ddns-details=17 )
ATTRDEFVAL: config,ddns,xfr-in,xfr-out,notify,query,packet,datastore,scavenge,server-operations,forward,lame-delegation,root-query,ddns-refreshes,ddns-refreshes-details,ddns-details
ATTRMCDPATH: log_settings
ATTRFLAGS: AF_REQUIRED
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 
analysing 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.

  query
    This flag allows log messages associated with query requests.
 
  packet
    This flag allows the generation of log messages associated general 
    packet processing.   

  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).

  forward
    This flag permits logging associated with outbound (forward) queries.

  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.

eod

ATTR: scp-port
ATTRID: 81
ATTRHDRNAME: AO_DNSSERVER_SCP_PORT
ATTRTYPE: AT_RANGEINT(0-65535)
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: scp_listen_port
ATTRVIZ: 3
ATTRDESC:: eod
eod

ATTR: auth-db-cache-size
ATTRID: 82
ATTRHDRNAME: AO_DNSSERVER_AUTHDB_CACHESIZE
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: auth_db_cache_size
ATTRVIZ: 1
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
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: cache_db_cache_size
ATTRVIZ: 1
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, AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 0
ATTRMCDPATH: cache_write_ttl_threshhold
ATTRVIZ: 1
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, AF_REQUIRED
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, AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: auth_db_cache_kbytes
ATTRVIZ: 3
ATTRDEFVAL: 1024
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 1000 kbytes.
eod

ATTR: cache-db-cache-kbytes
ATTRID: 89
ATTRHDRNAME: AO_DNSSERVER_CACHEDB_CACHE_KBYTES
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: cache_db_cache_kbytes
ATTRVIZ: 3
ATTRDEFVAL: 1024
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 1000 kbytes.
eod

ATTR: scvg-interval 
ATTRID: 90 
ATTRHDRNAME: AO_DNSSERVER_SCVG_INTERVAL
ATTRTYPE: AT_RANGETIME(3600-31536000)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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: 3
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: 3
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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 
ATTRFLAGS: AF_REQUIRED
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 
ATTRFLAGS: AF_REQUIRED
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 
ATTRFLAGS: AF_REQUIRED
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 
ATTRFLAGS: AF_REQUIRED
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 
ATTRFLAGS: AF_REQUIRED
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 
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
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
ATTRFLAGS: AF_REQUIRED
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)
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: dns_health_monitor_level
ATTRVIZ: 3
ATTRDEFVAL: 1
ATTRDESC:: eod

Specifies dns monitoring level. default 1 (on).

eod

ATTR: dns-health-monitor-interval  
ATTRID: 117
ATTRHDRNAME: AO_DNSSERVER_HEALTH_MONITOR_INTERVAL
ATTRTYPE: AT_RANGEINT(300-86400)
ATTRFLAGS: AF_REQUIRED
ATTRMCDPATH: dns_health_monitor_interval
ATTRVIZ: 3
ATTRDEFVAL: 1800
ATTRDESC:: eod

Specifies dns monitoring level. default 1800 seconds.

eod

ATTR: chset-db-lock-count
ATTRID: 133
ATTRHDRNAME: AO_DNSERVER_CHSET_DB_LOCK_COUNT
ATTRTYPE: AT_INT
ATTRFLAGS: AF_REQUIRED
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, AF_REQUIRED
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: 3
ATTRDESC:: eod
Set TRUE to enable checking serial gap during commitment.
Used for internal debug only.
eod

ATTR: delegation-only-domains
ATTRID: 143
ATTRHDRNAME: AO_DNSSERVER_DELEGATION_ONLY_DOMAINS
ATTRTYPE: AT_NLIST(AT_DNSNAME)
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

# 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_STRING
ATTRMCDPATH: name
ATTRFLAGS: AF_REQUIRED
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_LISTREF(ResourceRecord)
ATTRMCDPATH: records
ATTRVAL: 1202
ATTRFEAT: (type == primary)
ATTRVIZ: 3

ATTR: state-records
ATTRID: 4
ATTRHDRNAME: AO_ZONE_STATE_RECORDS
ATTRTYPE: AT_LISTREF(ResourceRecord)
ATTRMCDPATH: state-records
ATTRVAL: 1202
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)
ATTRMCDPATH: server
ATTRVAL: 1200
ATTRVIZ: 3

ATTR: restrict-xfer
ATTRID: 6
ATTRHDRNAME: AO_ZONE_RESTRICT_XFER
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_REQUIRED
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 restricted-set
property to list the servers that are allowed to perform zone
transfers.
eod

ATTR: dynamic
ATTRID: 7
ATTRHDRNAME: AO_ZONE_ENABLE_UPDATES
ATTRTYPE: AT_BOOL
ATTRFLAGS: AF_FEATURE, AF_REQUIRED
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.
eod

ATTR: restricted-set
VATTR: restricted-set
ATTRID: 8
ATTRHDRNAME: AO_ZONE_RESTRICTED_SET
ATTRTYPE: AT_STRUCT(AddrSet)
VTYPE: AT_SET(AT_IPADDR)
ATTRMCDPATH: restricted_set
ATTRFLAGS: AF_REQUIRED
ATTRVAL: 50
ATTRDEFVAL: 0
ATTRFEAT: 6
ATTRVIZ: 5
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
VATTR: dynupdate-set
ATTRID: 9
ATTRHDRNAME: AO_ZONE_DYNUPDATE_SET
ATTRTYPE: AT_STRUCT(AddrSet)
VTYPE: AT_SET(AT_IPADDR)
ATTRVAL: 50
ATTRMCDPATH: dyn_update_set
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 0
ATTRFEAT: 7 (type == primary)
ATTRVIZ: 5
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_STRUCT(AddrSet)
VTYPE: AT_SET(IPAddr)
ATTRVAL: 50
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

ATTR: x-fixname
ATTRID: 22
ATTRVIZ: 2
ATTRFLAGS: AF_IMMUTABLE
ATTRHDRNAME: AO_ZONE_FIXNAME
ATTRTYPE: AT_DNSNAME

ATTR: x-name
ATTRID: 23
ATTRVIZ: 2
ATTRFLAGS: AF_IMMUTABLE
ATTRHDRNAME: AO_ZONE_NAME
ATTRTYPE: AT_DNSNAME

ATTR: x-dbidx
ATTRID: 24
ATTRVIZ: 2
ATTRFLAGS: AF_IMMUTABLE
ATTRHDRNAME: AO_ZONE_DBIDX
ATTRTYPE: AT_INT

# END experimental native attributes for values stored in SOA and NS

# soa values 
#

VATTR: ns
VTYPE: AT_STRING
VFEAT: (type == primary)
VDEP: depends on ns (mname) field in the single SOA record for this zone
VVIZ: 5
VDESC:: eod
The fully-qualified domain name of the primary for this zone.  
This host is the original or primary source of data for this zone.
eod

VATTR: person
VTYPE: AT_STRING
VFEAT: (type == primary)
VDEP: depends on rp (rname) field in the single SOA record for this zone
VVIZ: 5
VDESC:: 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

VATTR: serial
VTYPE: AT_RANGEINT(0-4294967295)
VFEAT: (type == primary)
VDEP: depends on serial field in the single SOA record for this zone
VVIZ: 5
VDESC:: eod
The current serial number of the zone.  Maintained 
automatically by the DNS server.

Validation: 0 <= x <= 4294967295
eod

VATTR: refresh
VTYPE: AT_RANGETIME(1-2147483647)
VFEAT: (type == primary)
VDEP: depends on refresh field in the single SOA record for this zone
VVIZ: 5
VDESC:: 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

VATTR: retry
VTYPE: AT_RANGETIME(1-2147483647)
VFEAT: (type == primary)
VDEP: depends on retry field in the single SOA record for this zone
VVIZ: 5
VDESC:: 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

VATTR: expire
VTYPE: AT_RANGETIME(1-2147483647)
VFEAT: (type == primary)
VDEP: depends on expire field in the single SOA record for this zone
VVIZ: 5
VDESC:: 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

VATTR: minttl
VTYPE: AT_RANGETIME(0-2147483647)
VFEAT: (type == primary)
VDEP: depends on minttl field in the single SOA record for this zone
VVIZ: 5
VDESC:: 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: auth-servers
VATTR: auth-servers
ATTRID: 101
ATTRHDRNAME: AO_ZONE_AUTH_SERVERS
ATTRTYPE: AT_STRUCT(AddrSet)
VTYPE: AT_SET(AT_IPADDR)
ATTRVAL: 50
ATTRMCDPATH: value/server_set
ATTRFLAGS: AF_REQUIRED
ATTRFEAT: (type == secondary)
ATTRVIZ: 5
ATTRDESC:: eod
The is the list of servers from which we will transfer data 
for this zone.

Validation: Standard host IP address requirements.
eod

ATTR: defttl
ATTRID: 102
ATTRHDRNAME: AO_ZONE_DEFTTL
ATTRTYPE: AT_RANGEINT(0-2147483647)
ATTRFLAGS: AF_REQUIRED
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 (seconds) which the zone gets checkpoint (i.e.
latest zone snapshot 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
ATTRFLAGS: AF_REQUIRED
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 (seconds) at which the zone gets scheduled for
scavenging.

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 (seconds) which the zone cannot have a timestamp updated.

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 (seconds) 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 a
candidate 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 (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 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: 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 check point occurs and the second checkpoint starts.
For dynamic checkpoints only. 

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 the dns server will scavenge from
one zone during a scaveging interval when scavenging is enabled. 

Validation: 1 <= x <= 10000
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

###
# 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
CLASSNAMEDESC:: eod
The name of ResourceRecord objects is the name of the resource record.
ResourceRecord objects cannot be renamed.
eod
CLASSVIZ: 5
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 
CLASSNAME: 1
CLASSNAMEDESC:: eod
The name of Host objects is the name of the resource record.
Host objects cannot be renamed.
eod
CLASSVIZ: 5
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
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
CLASSVIZ: 5
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-3)
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
CLASSNAME: 1
CLASSNAMEDESC:: eod
The PoolManager doesn't really have a name.
eod
CLASSVIZ: 5
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_DNSNAME
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*))
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*))
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
 
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

# CLASSID RANGE TFTP classes 1300 - 1399

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: AF_REQUIRED
ATTRDEFVAL: 4
ATTRMCDPATH: TftpLogFileCount
ATTRVIZ: 5
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: AF_REQUIRED
ATTRDEFVAL: 1024k
ATTRMCDPATH: TftpLogFileSize
ATTRVIZ: 5
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-1000)
ATTRFLAGS: AF_REQUIRED
ATTRDEFVAL: 512
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 one of the
current sessions has completed.
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: 60
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 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

ATTR: log-settings
ATTRID: 38 
ATTRHDRNAME: AO_TFTPSERVER_VERBOSELOGGING
ATTRTYPE: AT_FLAGSINT( default=1, no-success-messages=2 )
ATTRFLAGS: AF_INITIALIZE
ATTRDEFVAL: default
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 
analysing 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
    This will cause 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 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, AF_REQUIRED
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 AF_REQUIRED
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

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, AF_REQUIRED
ATTRDEFVAL: 32000 
ATTRMCDPATH: TftpFileCacheMaxMemSize
ATTRVIZ: 5 
ATTRDESC:: eod
Specifies the maximum amount of memory (in Bytes) that the server can use
for file-caching.  
eod

# CLASSID RANGE Campus Manager (CM) classes 1400 - 1499
# defined in cm_datadict

