XEROX-COMMS-CONFIG-MIB DEFINITIONS ::= BEGIN

--  Module: Communications Configuration MIB
--  File:   53config.mib
--  Date:   31 October 2002 - Version 5.11.pub

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
        Integer32
            FROM SNMPv2-SMI             -- IETF RFC 1442/1902/2578
    RowStatus
            FROM SNMPv2-TC              -- IETF RFC 1443/1903/2579
    MODULE-COMPLIANCE, OBJECT-GROUP
            FROM SNMPv2-CONF            -- IETF RFC 1444/1904/2580
    hrDeviceIndex
            FROM HOST-RESOURCES-MIB     -- IETF RFC 1514/2790
    IANACharset
            FROM IANA-CHARSET-MIB       -- IANA Charset Mib
    xeroxCommonMIB
            FROM XEROX-COMMON-MIB
    Ordinal32, Cardinal32,
        XcmGenOptionValueSyntax,
        XcmFixedLocaleUtf8String,
        zeroDotZero
            FROM XEROX-GENERAL-TC
    XcmCommsStackExtProtocol
            FROM XEROX-COMMS-ENGINE-TC
    XcmCommsConfigGroupSupport,
        XcmCommsDirRecordType,
        XcmCommsDirAttributeType
            FROM XEROX-COMMS-CONFIG-TC;

xcmCommsConfigMIB MODULE-IDENTITY
    LAST-UPDATED "0210310000Z" -- 31 Oct 2002
    ORGANIZATION "Xerox Corporation - XCMI Working Group"


    CONTACT-INFO
        "           XCMI Editors
        Email:      coherence@crt.xerox.com
        "
    DESCRIPTION
        "Version:   5.11.pub

        The MIB module which supports active configuration discovery
        of communications protocol stacks, communications end system
        applications, communications intermediate systems, and
        communications gateways for network accessible host systems.

        Usage:  Note that throughout this MIB module, the INDEX clauses
        referring to 'hrDeviceIndex' for the 'hrDeviceTable' (Devices
        Group) of the Host Resources MIB (RFC 2790) SHALL
        specify host system CPUs (ie, 'hrDeviceProcessor') and shall NOT
        specify host system 'network interfaces', with entries in the
        'ifTable' (Interfaces Group) of MIB-II (RFC 1213).

        Copyright (C) 1996-2002 Xerox Corporation. All Rights Reserved."
    ::= { xeroxCommonMIB 64 }

xcmCommsConfigZeroDummy OBJECT IDENTIFIER ::= { zeroDotZero 64 }
--
--          Comms Config MIB
--
--          Comms Config Group (Mandatory)
--
--          Implementation of this group is mandatory for all systems

xcmCommsConfig          OBJECT IDENTIFIER ::= { xcmCommsConfigMIB 3 }

xcmCommsConfigTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XcmCommsConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of the communications engines installed and (possibly)
        running on platforms (ie, CPUs) on this host system."
    ::= { xcmCommsConfig 2 }

xcmCommsConfigEntry OBJECT-TYPE
    SYNTAX      XcmCommsConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry for a communications engine installed and (possibly)
        running on a platform (ie, CPU) on this host system.

        Usage:  Note that values of 'hrDeviceIndex' used to reference
        entries in the 'xcmCommsEngineTable' SHALL reference
        entries in the 'hrDeviceTable' with 'hrDeviceType' equal to
        'hrDeviceProcessor' (representing host system CPUs and therefore
        also having corresponding entries in the 'hrProcessorTable')."


    INDEX       { hrDeviceIndex }
    ::= { xcmCommsConfigTable 1 }

XcmCommsConfigEntry ::= SEQUENCE {
        --  Comms Config Information
        xcmCommsConfigRowStatus         RowStatus,
        xcmCommsConfigActiveOptionFirst Cardinal32,
        xcmCommsConfigActiveOptionLast  Cardinal32,
        xcmCommsConfigGroupSupport      XcmCommsConfigGroupSupport,
        xcmCommsConfigCreateSupport     XcmCommsConfigGroupSupport,
        xcmCommsConfigUpdateSupport     XcmCommsConfigGroupSupport
    }

--
--          Comms Config Information
--

xcmCommsConfigRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object displays the status of individual conceptual
        rows in the 'xcmCommsConfigTable'.

        Usage:  'xcmCommsConfigRowStatus' is 'read-only' because
        these conceptual rows shall NOT be deleted."
    ::= { xcmCommsConfigEntry 1 }

xcmCommsConfigActiveOptionFirst OBJECT-TYPE
    SYNTAX      Cardinal32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of 'xcmCommsOptionIndex' corresponding to the first
        active configuration option (in 'xcmCommsOptionTable'), or zero
        if this communications engine does NOT require such information.

        Usage:  This 'chain' represents currently active configuration
        options of this communications engine."
    REFERENCE
        "See:   'xcmCommsConfigActiveOptionLast'"
    DEFVAL      { 0 }                   -- no entries
    ::= { xcmCommsConfigEntry 2 }

xcmCommsConfigActiveOptionLast OBJECT-TYPE
    SYNTAX      Cardinal32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of 'xcmCommsOptionIndex' corresponding to the last
        active configuration option (in 'xcmCommsOptionTable'), or zero
        if this communications engine does NOT require such information.


        Usage:  This 'chain' represents currently active configuration
        options of this communications engine.

        Usage:  The last entry index explicitly bounds the valid range
        of 'xcmCommsOptionIndex'.  This is the value of the numerically
        highest entry index, NOT necessarily the 'logically last' entry
        index in the structured tree in 'xcmCommsOptionTable'."
    REFERENCE
        "See:   'xcmCommsConfigActiveOptionFirst'"
    DEFVAL      { 0 }                   -- no entries
    ::= { xcmCommsConfigEntry 3 }

xcmCommsConfigGroupSupport OBJECT-TYPE
    SYNTAX      XcmCommsConfigGroupSupport
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The terse conformance statement of ALL mandatory, conditionally
        mandatory, and optional XCMI Comms Config MIB object groups
        supported by this management agent implementation (ie, version)
        on this host system, specified in a bit-mask.

        Usage:  Conforming management agents SHALL accurately
        report their support for XCMI Comms Config MIB object groups."
    DEFVAL      { 1 }                   -- mandatory groups
    ::= { xcmCommsConfigEntry 4 }

xcmCommsConfigCreateSupport OBJECT-TYPE
    SYNTAX      XcmCommsConfigGroupSupport
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The terse conformance statement of ALL mandatory, conditionally
        mandatory, and optional XCMI Comms Config MIB object groups
        supported for dynamic row creation (via '...RowStatus')
        by this management agent implementation (ie, version)
        on this host system, specified in a bit-mask.

        Usage:  Conforming management agents SHALL accurately
        report their support for XCMI Comms Config MIB object groups."
    DEFVAL      { 0 }                   -- no dynamic row create groups
    ::= { xcmCommsConfigEntry 5 }

xcmCommsConfigUpdateSupport OBJECT-TYPE
    SYNTAX      XcmCommsConfigGroupSupport
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The terse conformance statement of ALL mandatory, conditionally
        mandatory, and optional XCMI Comms Config MIB object groups
        supported for existing row update (via SNMP Set-Request PDUs)
        by this management agent implementation (ie, version)
        on this host system, specified in a bit-mask.


        Usage:  Conforming management agents SHALL accurately
        report their support for XCMI Comms Config MIB object groups."
    DEFVAL      { 0 }                   -- no existing row update groups
    ::= { xcmCommsConfigEntry 6 }

--
--          Comms Option Group (Mandatory)
--
--          Implementation of this group is mandatory for all systems.

xcmCommsOption          OBJECT IDENTIFIER ::= { xcmCommsConfigMIB 4 }

xcmCommsOptionTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XcmCommsOptionEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table containing information on installation, configuration,
        or other aspects of communications options on this host system."
    ::= { xcmCommsOption 2 }

xcmCommsOptionEntry OBJECT-TYPE
    SYNTAX      XcmCommsOptionEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry containing information on installation, configuration,
        or other aspects of communications options on this host system."
    INDEX       { hrDeviceIndex, xcmCommsOptionIndex }
    ::= { xcmCommsOptionTable 1 }

XcmCommsOptionEntry ::= SEQUENCE {
        --  Comms Option Information
        xcmCommsOptionIndex             Ordinal32,
        xcmCommsOptionRowStatus         RowStatus,
        xcmCommsOptionTypeOID           OBJECT IDENTIFIER,
        xcmCommsOptionValueSyntax       XcmGenOptionValueSyntax,
        xcmCommsOptionValueInteger      Integer32,
        xcmCommsOptionValueOID          OBJECT IDENTIFIER,
        xcmCommsOptionValueString       OCTET STRING,
        xcmCommsOptionValueLocalization Cardinal32,
        xcmCommsOptionValueCodedCharSet IANACharset,
        --  Comms Option Common Cross References
        xcmCommsOptionNextIndex         Cardinal32,
        xcmCommsOptionPreviousIndex     Cardinal32,
        xcmCommsOptionFamilyIndex       Cardinal32
    }

--
--          Comms Option Information
--

xcmCommsOptionIndex OBJECT-TYPE


    SYNTAX      Ordinal32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A unique value used by this host system to identify this
        conceptual row in the 'xcmCommsOptionTable'."
    ::= { xcmCommsOptionEntry 1 }

xcmCommsOptionRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object displays the status of individual conceptual
        rows in the 'xcmCommsOptionTable'."
    ::= { xcmCommsOptionEntry 2 }

xcmCommsOptionTypeOID OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "An unambiguous communications option type,
        used by system administrators and end users to identify
        this communications option.

        Usage:  Since this communications option type is specified
        as an object identifier, it MAY be taken from any IETF, Xerox,
        third- party, or product-specific MIB, or it MAY simply be any
        IETF SMIv2-style 'autonomous type'."
    DEFVAL      { zeroDotZero }   -- no option type
    ::= { xcmCommsOptionEntry 3 }

xcmCommsOptionValueSyntax OBJECT-TYPE
    SYNTAX      XcmGenOptionValueSyntax
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "A communications option value syntax,
        used by system administrators and end users to specify
        the correct value syntax for this communications option.

        Usage:  This communications option value syntax is used to
        select which of the following three objects shall be used to
        contain the value of this communications option."
    DEFVAL      { unknown }             -- unknown option value syntax
    ::= { xcmCommsOptionEntry 4 }

xcmCommsOptionValueInteger OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "A communications option value integer,


        used by system administrators and end users to specify
        the current value for a communications option
        with a base value syntax of 'INTEGER'."
    REFERENCE
        "See:   'xcmCommsOptionValueSyntax' and 'xcmCommsOptionTypeOID'"
    DEFVAL      { 0 }                   -- no option value integer
    ::= { xcmCommsOptionEntry 5 }

xcmCommsOptionValueOID OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "A communications option value OID (object identifier),
        used by system administrators and end users to specify
        the current value for a communications option
        with a base value syntax of 'OBJECT IDENTIFIER'."
    REFERENCE
        "See:   'xcmCommsOptionValueSyntax' and 'xcmCommsOptionTypeOID'"
    DEFVAL      { zeroDotZero }   -- no option value OID
    ::= { xcmCommsOptionEntry 6 }

xcmCommsOptionValueString OBJECT-TYPE
--  SYNTAX      XcmFixedLocaleDisplayString (SIZE (0..255))
--              (if 'xcmCommsOptionValueLocalization' is zero)
--  SYNTAX      XcmNamedLocaleUtf8String (SIZE (0..255))
--              (if 'xcmCommsOptionValueLocalization' is non-zero)
    SYNTAX      OCTET STRING (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "A communications option value string,
        used by system administrators and end users to specify
        the current value for a communications option
        with a base value syntax of 'OCTET STRING'.

        Usage:  This object is of type 'XcmFixedLocaleDisplayString'
        (if 'xcmCommsOptionValueLocalization' is zero)
        or 'XcmNamedLocaleUtf8String'
        (if 'xcmCommsOptionValueLocalization' is non-zero).

        Usage:  Conformant implementations MUST encrypt passwords, keys,
        and other security information stored in this string object."
    REFERENCE
        "See:   'xcmCommsOptionValueSyntax' and 'xcmCommsOptionTypeOID'
        See:    'xcmGenFixedLocalizationIndex' in XCMI General MIB."
    DEFVAL      { ''H }                 -- no option value string
    ::= { xcmCommsOptionEntry 7 }

xcmCommsOptionValueLocalization OBJECT-TYPE
    SYNTAX      Cardinal32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION


        "A communications option value localization,
        used by system administrators and end users to specify
        the ALTERNATE localization for a communications option
        (different from 'xcmGenFixedLocalizationIndex'), so that
        'xcmCommsOptionValueString' becomes 'XcmNamedLocaleUtf8String'.

        Usage:  For a communications option string to which POSIX-style
        localization (territory, language, character set) is applicable
        (non-keyword) this object MAY contain a suitable index value for
        'xcmGenLocalizationIndex' from the XCMI General MIB, or zero to
        indicate 'none'."
    REFERENCE
        "See:   'xcmCommsOptionValueSyntax' and 'xcmCommsOptionTypeOID'.
        See:    'xcmGenFixedLocalizationIndex' in XCMI General MIB."
    DEFVAL      { 0 }                   -- no option value localization
    ::= { xcmCommsOptionEntry 8 }

xcmCommsOptionValueCodedCharSet OBJECT-TYPE
    SYNTAX      IANACharset
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "A communications option value character set,
        used by system administrators and end users to specify
        the ALTERNATE character set for a communications option
        (different from 'xcmGenFixedLocalizationIndex'), so that
        'xcmCommsOptionValueString' is unambiguous.

        Usage:  XCMI conforming management agents shall ONLY allow
        Sets of this object to 'other' (none) or 'utf-8' (Unicode/
        ISO-10646 in the UTF-8 encoding, a proper superset of US-ASCII),
        for consistency with the Xerox Unicode Coherence Standard."
    REFERENCE
        "See:   'xcmCommsOptionValueSyntax' and 'xcmCommsOptionTypeOID'.
        See:    'IANACharset' in IETF Printer MIB (RFC 1759).
        See:    'xcmGenCodedCharSetTable' in XCMI General MIB."
    DEFVAL      { other }               -- no option value character set
    ::= { xcmCommsOptionEntry 9 }

--
--          Comms Option Common Cross References
--

xcmCommsOptionNextIndex OBJECT-TYPE
    SYNTAX      Cardinal32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of 'xcmCommsOptionIndex' corresponding to the next
        'chained' conceptual row in the 'xcmCommsOptionTable', or zero
        if this is the last associated conceptual row in a particular
        vertical 'chain' within a given set.

        Usage:  Generally, communications options (of similar or unlike


        type) are 'chained' vertically via '...[Next|Previous]Index'.
        But, in the case where particular communications options MUST
        be 'tightly coupled', they SHOULD be 'shelved' horizontally via
        '...[Family|Previous]Index' (eg, an IP address and an IP subnet
        mask)."
    REFERENCE
        "See:   'xcmCommsOption[Family|Previous]Index'"
    DEFVAL      { 0 }                   -- no entry
    ::= { xcmCommsOptionEntry 10 }

xcmCommsOptionPreviousIndex OBJECT-TYPE
    SYNTAX      Cardinal32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of 'xcmCommsOptionIndex' corresponding to a previous
        associated conceptual row in the 'xcmCommsOptionTable', or zero
        if this is the first associated conceptual row in a given set.

        Usage:  This object provides common 'backward' linkage for BOTH
        the 'xcmCommsOptionNextIndex' and 'xcmCommsOptionFamilyIndex'
        linkage objects.  A previous conceptual row MAY 'forward'
        reference this conceptual row via either '...NextIndex' or
        '...FamilyIndex' - ie, a given conceptual row MAY 'forward'
        reference EXACTLY zero, one, or two 'later' conceptual rows."
    REFERENCE
        "See:   'xcmCommsOption[Next|Family]Index'"
    DEFVAL      { 0 }                   -- no entry
    ::= { xcmCommsOptionEntry 11 }

xcmCommsOptionFamilyIndex OBJECT-TYPE
    SYNTAX      Cardinal32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of 'xcmCommsOptionIndex' corresponding to the next
        'family' conceptual row in the 'xcmCommsOptionTable', or zero
        if this is the last associated conceptual row in a particular
        horizontal 'shelf' (of 'family' members) within a given set.

        Usage:  Generally, communications options (of similar or unlike
        type) are 'chained' vertically via '...[Next|Previous]Index'.
        But, in the case where particular communications options MUST
        be 'tightly coupled', they SHOULD be 'shelved' horizontally via
        '...[Family|Previous]Index' (eg, an IP address and an IP subnet
        mask)."
    REFERENCE
        "See:   'xcmCommsOption[Next|Previous]Index'"
    DEFVAL      { 0 }                   -- no entry
    ::= { xcmCommsOptionEntry 12 }


--
--          Directory Record Group (Cond Mandatory)
--
--          Implementation of this group is conditionally mandatory, ie,
--          mandatory for systems which implement directories via SNMP.

xcmCommsDirRecord       OBJECT IDENTIFIER ::= { xcmCommsConfigMIB 5 }

xcmCommsDirRecordTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XcmCommsDirRecordEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table containing directory records
        configured on this host system."
    ::= { xcmCommsDirRecord 2 }

xcmCommsDirRecordEntry OBJECT-TYPE
    SYNTAX      XcmCommsDirRecordEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry for a directory record
        configured on this host system."
    INDEX       { xcmCommsDirRecordType,
                  xcmCommsDirRecordIndex }
    ::= { xcmCommsDirRecordTable 1 }

XcmCommsDirRecordEntry ::= SEQUENCE {
        --  Directory Record Information
        xcmCommsDirRecordType           XcmCommsDirRecordType,
        xcmCommsDirRecordIndex          Ordinal32,
        xcmCommsDirRecordRowStatus      RowStatus,
        xcmCommsDirRecordKeyType        XcmCommsDirAttributeType,
        xcmCommsDirRecordKeyInteger     Integer32,
        xcmCommsDirRecordKeyString      XcmFixedLocaleUtf8String,
        xcmCommsDirRecordParentType     XcmCommsDirRecordType,
        xcmCommsDirRecordParentIndex    Cardinal32
    }

xcmCommsDirRecordType OBJECT-TYPE
    SYNTAX      XcmCommsDirRecordType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A directory record type, used to uniquely identify this
        directory record (and all subordinate directory attributes),
        when combined with 'xcmCommsDirRecordIndex' (below)."
    ::= { xcmCommsDirRecordEntry 1 }

xcmCommsDirRecordIndex OBJECT-TYPE
    SYNTAX      Ordinal32
    MAX-ACCESS  not-accessible
    STATUS      current


    DESCRIPTION
        "A directory record index, used to uniquely identify this
        directory record (and all subordinate directory attributes),
        when combined with 'xcmCommsDirRecordType' (above).

        Usage:  This directory record index SHALL be unique for
        each record of a given type (value of 'xcmCommsDirRecordType'),
        but NEED NOT be unique for directory records of different types.
        This is to permit directory records of different types to start
        their numbering (value of 'xcmCommsDirRecordIndex') over from
        one ('1') and such usage is RECOMMENDED."
    ::= { xcmCommsDirRecordEntry 2 }

xcmCommsDirRecordRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "This object manages the row status of this conceptual row in
        the 'xcmCommsDirRecordTable'.

        Usage:  Conforming implementations which support static rows
        SHALL support 'active' and 'notInService' writes to this
        'xcmCommsDirRecordRowStatus' row status object; and
        SHALL clear the 'commsDirRecordGroup' bit in
        'xcmCommsConfigCreateSupport' in the 'xcmCommsConfigTable'.

        Usage:  Conforming implementations which support dynamic rows
        SHALL support 'createAndGo' and 'destroy' writes to this
        'xcmCommsDirRecordRowStatus' row status object; and
        SHALL set the 'commsDirRecordGroup' bit in
        'xcmCommsConfigCreateSupport' in the 'xcmCommsConfigTable'.

        Usage:  Conforming implementations need NOT support dynamic row
        creation (via 'createAndGo(4)') nor dynamic row deletion (via
        'destroy(6)').

        Usage:  See section 3.4 'Secure Modes of Operation' and section
        3.5 'Secure SNMP Get/Set Requests' in XCMI Security TC, for
        details of secure modes of access to this row status object."
    REFERENCE
        "See:   'xcmCommsConfigCreateSupport' in 'xcmCommsConfigTable'.
        See:    'RowStatus' in IETF SNMPv2 TC (RFC 1443/1903/2579).
        See:    'xcmHrDevMgmtCommandData' in XCMI HRX MIB and
                'xcmSecUserMgmtData' in XCMI Security MIB."
    ::= { xcmCommsDirRecordEntry 3 }

xcmCommsDirRecordKeyType OBJECT-TYPE
    SYNTAX      XcmCommsDirAttributeType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "A directory record key attribute type, used to specify a
        primary key attribute for sorting this directory record, or


        'unknown' if no primary key attribute is specified.

        Usage:  The 'Relative Distinguished Name' (RDN) of this
        directory record is the tuple of the directory record type, the
        key attribute type, and the key attribute value."
    REFERENCE
        "See:   'XcmCommsDirAttributeType' in the XCMI CC TC
                'xcmCommsDirAttributeType' in this XCMI CC MIB."
    DEFVAL      { unknown }             -- no key attribute type
    ::= { xcmCommsDirRecordEntry 4 }

xcmCommsDirRecordKeyInteger OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "A directory record key attribute integer value, used to specify
        a primary key attribute for sorting this directory record, or
        zero ('0') if no primary key attribute is specified.

        Usage:  The 'Relative Distinguished Name' (RDN) of this
        directory record is the tuple of the directory record type, the
        key attribute type, and the key attribute value."
    REFERENCE
        "See:   'xcmCommsDirRecordKeyType' in this XCMI CC MIB
                'xcmCommsDirAttributeValue' in this XCMI CC MIB."
    DEFVAL      { 0 }                   -- no key attribute integer
    ::= { xcmCommsDirRecordEntry 5 }

xcmCommsDirRecordKeyString OBJECT-TYPE
    SYNTAX      XcmFixedLocaleUtf8String (SIZE (0..255))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "A directory record key attribute string value, used to specify
        a primary key attribute for sorting this directory record, or
        zero ('0') if no primary key attribute is specified.

        Usage:  String-valued directory attributes SHALL be
        specified as UTF-8 encoded Unicode (ISO 10646) strings.

        Usage:  The 'Relative Distinguished Name' (RDN) of this
        directory record is the tuple of the directory record type, the
        key attribute type, and the key attribute value."
    REFERENCE
        "See:   'xcmCommsDirRecordKeyType' in this XCMI CC MIB
                'xcmCommsDirStringValue' in this XCMI CC MIB."
    DEFVAL      { ''H }                 -- no key attribute string
    ::= { xcmCommsDirRecordEntry 6 }

xcmCommsDirRecordParentType OBJECT-TYPE
    SYNTAX      XcmCommsDirRecordType
    MAX-ACCESS  read-create
    STATUS      current


    DESCRIPTION
        "A parent directory record type, used to identify the parent
        directory record (superior to this directory record), or
        'unknown' if no parent directory record is specified.

        Usage:  Supports hierarchical directory structures.

        Usage:  The 'Fully Qualified Distinguished Name' (FQDN) of this
        directory record is the concatentation of the RDN (record key)
        of this directory record with the RDNs of all superior directory
        records to the 'top' (highest node)."
    REFERENCE
        "See:   'xcmCommsDirRecordType' in this XCMI CC MIB
                'xcmCommsDirRecordIndex' in this XCMI CC MIB."
    DEFVAL      { unknown }             -- no parent record type
    ::= { xcmCommsDirRecordEntry 7 }

xcmCommsDirRecordParentIndex OBJECT-TYPE
    SYNTAX      Cardinal32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "A parent directory record index, used to identify the parent
        directory record (superior to this directory record), or
        zero ('0') if no parent directory record is specified.

        Usage:  Supports hierarchical directory structures.

        Usage:  The 'Fully Qualified Distinguished Name' (FQDN) of this
        directory record is the concatentation of the RDN (record key)
        of this directory record with the RDNs of all superior directory
        records to the 'top' (highest node)."
    REFERENCE
        "See:   'xcmCommsDirRecordType' in this XCMI CC MIB
                'xcmCommsDirRecordIndex' in this XCMI CC MIB."
    DEFVAL      { 0 }                   -- no parent record index
    ::= { xcmCommsDirRecordEntry 8 }

--
--          Directory Attribute Group (Cond Mandatory)
--
--          Implementation of this group is conditionally mandatory, ie,
--          mandatory for systems which implement directories via SNMP.

xcmCommsDirAttribute    OBJECT IDENTIFIER ::= { xcmCommsConfigMIB 6 }

xcmCommsDirAttributeTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XcmCommsDirAttributeEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table containing integer-valued directory attributes
        configured on this host system.


        Usage:  Table contains an entry for all integer-valued and
        string-valued attributes configured on this host system."
    ::= { xcmCommsDirAttribute 2 }

xcmCommsDirAttributeEntry OBJECT-TYPE
    SYNTAX      XcmCommsDirAttributeEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry for an integer-valued directory attribute
        configured on this host system."
    INDEX       { xcmCommsDirRecordType,
                  xcmCommsDirRecordIndex,
                  xcmCommsDirAttributeType,
                  xcmCommsDirAttributeIndex }
    ::= { xcmCommsDirAttributeTable 1 }

XcmCommsDirAttributeEntry ::= SEQUENCE {
        --  Directory Attribute Information
        xcmCommsDirAttributeType        XcmCommsDirAttributeType,
        xcmCommsDirAttributeIndex       Ordinal32,
        xcmCommsDirAttributeRowStatus   RowStatus,
        xcmCommsDirAttributeValue       Integer32
    }

xcmCommsDirAttributeType OBJECT-TYPE
    SYNTAX      XcmCommsDirAttributeType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A directory attribute type, used to uniquely identify this
        integer-valued directory attribute (and also any matching
        string-valued directory attribute in 'xcmCommsDirStringTable'),
        when combined with 'xcmCommsDirAttributeIndex' (below).

        Usage:   When directory attribute type indicates integer-valued,
        the value of 'xcmCommsDirAttributeValue' SHALL be the
        actual value of this directory attribute.

        Usage:   When directory attribute type indicates string-valued,
        the value of 'xcmCommsDirAttributeValue' SHALL be zero,
        EXCEPT for a directory attribute type of 'protocolTyped...',
        when the protocol type shall be specified as the integer value.
        The actual string-valued attribute SHALL be specified in
        an exactly matching row of 'xcmCommsDirStringTable'.

        Usage:  Matching directory attributes (string-valued)
        SHALL be specified in an exactly matching row of
        'xcmCommsDirStringTable'.  Matching rows have EXACTLY the SAME
        values of 'xcmCommsDirRecordType', 'xcmCommsDirRecordIndex',
        'xcmCommsDirAttributeType', and 'xcmCommsDirAttributeIndex'.

        Usage:  Parallel directory attributes (peers of this one)


        SHALL be specified in parallel (NOT matching) rows of
        'xcmCommsDirAttributeTable' (integer-valued attributes) or
        'xcmCommsDirStringTable' (string-valued attributes).  Parallel
        rows have EXACTLY the SAME values of 'xcmCommsDirRecordType',
        'xcmCommsDirRecordIndex', and 'xcmCommsDirAttributeIndex',
        but MUST have a DIFFERENT value of 'xcmCommsDirAttributeType'.

        Usage:   When directory attribute type is 'protocolTyped...' the
        particular protocol layer SHALL be specified by placing a
        a value from the enumeration 'XcmCommsStackExtProtocol' in
        'xcmCommsDirAttributeValue' for this row."
    REFERENCE
        "See:   'XcmCommsDirAttributeType' in the XCMI CC TC
                'XcmCommsStackExtProtocol' in the XCMI Comms Engine TC."
    ::= { xcmCommsDirAttributeEntry 1 }

xcmCommsDirAttributeIndex OBJECT-TYPE
    SYNTAX      Ordinal32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A directory attribute index, used to uniquely identify this
        integer-valued directory attribute (and also any matching
        string-valued directory attribute in 'xcmCommsDirStringTable'),
        when combined with 'xcmCommsDirAttributeType' (above).

        Usage:  This directory attribute index SHALL be unique
        for each attribute subordinate to one directory record (ie, rows
        with EXACTLY the SAME values of 'xcmCommsDirRecordType' and
        'xcmCommsDirRecordIndex').  EXCEPT when two or more different
        directory attributes are 'parallel'; then they SHALL
        have EXACTLY the SAME value of 'xcmCommsDirAttributeIndex'.

        Example:  The following example illustrates the use of
        'parallel' directory attributes in a 'speed dial' entry.
        (Index values are shown in square brackets, for clarity.)

        --  Speed Dial record (specifying sort key of user full name)
       [xcmCommsDirRecordType           = recordSpeedDial]
       [xcmCommsDirRecordIndex          = 1]
        xcmCommsDirRecordRowStatus      = active
        xcmCommsDirRecordKeyType        = userFullName (sort key)
        xcmCommsDirRecordKeyInteger     = 0 (unused)
        xcmCommsDirRecordKeyString      = 'Fred Flintstone' (sort key)

        --  String-valued attribute (user location)
       [xcmCommsDirRecordType           = recordSpeedDial]
       [xcmCommsDirRecordIndex          = 1]
       [xcmCommsDirAttributeType        = userLocation]
       [xcmCommsDirAttributeIndex       = 1]
        xcmCommsDirAttributeRowStatus   = active
        xcmCommsDirAttributeValue       = 0 (unused)
        xcmCommsDirStringRowStatus      = active
        xcmCommsDirStringValue          = 'Bldg 705, H-18'


        --  String-valued attribute (primary FAX address)
       [xcmCommsDirRecordType           = recordSpeedDial]
       [xcmCommsDirRecordIndex          = 1]
       [xcmCommsDirAttributeType        = protocolTypedAddress]
       [xcmCommsDirAttributeIndex       = 2]
        xcmCommsDirAttributeRowStatus   = active
        xcmCommsDirAttributeValue       = osiwanFax (FAX protocol type)
        xcmCommsDirStringRowStatus      = active
        xcmCommsDirStringValue          = '0+...' (FAX phone number)

        --  Integer-valued attribute (primary FAX highest priority)
       [xcmCommsDirRecordType           = recordSpeedDial]
       [xcmCommsDirRecordIndex          = 1]
       [xcmCommsDirAttributeType        = protocolPriority]
       [xcmCommsDirAttributeIndex       = 2] (parallel attribute)
        xcmCommsDirAttributeRowStatus   = active
        xcmCommsDirAttributeValue       = 100 (highest priority)

        --  Integer-valued attribute (primary FAX max retries)
       [xcmCommsDirRecordType           = recordSpeedDial]
       [xcmCommsDirRecordIndex          = 1]
       [xcmCommsDirAttributeType        = protocolMaxRetries]
       [xcmCommsDirAttributeIndex       = 2] (parallel attribute)
        xcmCommsDirAttributeRowStatus   = active
        xcmCommsDirAttributeValue       = 3 (FAX max retries)

        --  Integer-valued attribute (primary FAX retry interval)
       [xcmCommsDirRecordType           = recordSpeedDial]
       [xcmCommsDirRecordIndex          = 1]
       [xcmCommsDirAttributeType        = protocolRetryInterval]
       [xcmCommsDirAttributeIndex       = 2] (parallel attribute)
        xcmCommsDirAttributeRowStatus   = active
        xcmCommsDirAttributeValue       = 10 (FAX retry interval)

        --  String-valued attribute (secondary FAX address)
       [xcmCommsDirRecordType           = recordSpeedDial]
       [xcmCommsDirRecordIndex          = 1]
       [xcmCommsDirAttributeType        = protocolTypedAddress]
       [xcmCommsDirAttributeIndex       = 3]
        xcmCommsDirAttributeRowStatus   = active
        xcmCommsDirAttributeValue       = osiwanFax (FAX protocol type)
        xcmCommsDirStringRowStatus      = active
        xcmCommsDirStringValue          = '0+...' (FAX phone number)

        --  Integer-valued attribute (secondary FAX medium priority)
       [xcmCommsDirRecordType           = recordSpeedDial]
       [xcmCommsDirRecordIndex          = 1]
       [xcmCommsDirAttributeType        = protocolPriority]
       [xcmCommsDirAttributeIndex       = 3] (parallel attribute)
        xcmCommsDirAttributeRowStatus   = active
        xcmCommsDirAttributeValue       = 50 (medium priority)

        --  String-valued attribute (tertiary Email address)


       [xcmCommsDirRecordType           = recordSpeedDial]
       [xcmCommsDirRecordIndex          = 1]
       [xcmCommsDirAttributeType        = protocolTypedAddress]
       [xcmCommsDirAttributeIndex       = 4]
        xcmCommsDirAttributeRowStatus   = active
        xcmCommsDirAttributeValue       = internetSMTP (Email protocol)
        xcmCommsDirStringRowStatus      = active
        xcmCommsDirStringValue          = 'fflint@...' (Email address)

        --  Integer-valued attribute (tertiary Email lowest priority)
       [xcmCommsDirRecordType           = recordSpeedDial]
       [xcmCommsDirRecordIndex          = 1]
       [xcmCommsDirAttributeType        = protocolPriority]
       [xcmCommsDirAttributeIndex       = 4] (parallel attribute)
        xcmCommsDirAttributeRowStatus   = active
        xcmCommsDirAttributeValue       = 1 (lowest priority)

        Discussion:  This example shows a 'speed dial' directory record
        with a primary sort key (e.g., for local UI display ordering) of
        the destination user's full name ('userFullName').
        Also shown are four sets of 'parallel' directory attributes:
        a)  user location;
        b)  primary FAX destination (highest priority);
        c)  secondary FAX destination (medium priority);
        d)  tertiary Email destination (lowest priority).

        Usage:  Each 'parallel' directory attribute in a given set is
        correlated by the SAME value of 'xcmCommsDirAttributeIndex'."
    ::= { xcmCommsDirAttributeEntry 2 }

xcmCommsDirAttributeRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "This object manages the row status of this conceptual row in
        the 'xcmCommsDirAttributeTable'.

        Usage:  Conforming implementations which support static rows
        SHALL support 'active' and 'notInService' writes to this
        'xcmCommsDirAttributeRowStatus' row status object; and
        SHALL clear the 'commsDirAttributeGroup' bit in
        'xcmCommsConfigCreateSupport' in the 'xcmCommsConfigTable'.

        Usage:  Conforming implementations which support dynamic rows
        SHALL support 'createAndGo' and 'destroy' writes to this
        'xcmCommsDirAttributeRowStatus' row status object; and
        SHALL set the 'commsDirAttributeGroup' bit in
        'xcmCommsConfigCreateSupport' in the 'xcmCommsConfigTable'.

        Usage:  Conforming implementations need NOT support dynamic row
        creation (via 'createAndGo(4)') nor dynamic row deletion (via
        'destroy(6)').


        Usage:  See section 3.4 'Secure Modes of Operation' and section
        3.5 'Secure SNMP Get/Set Requests' in XCMI Security TC, for
        details of secure modes of access to this row status object."
    REFERENCE
        "See:   'xcmCommsConfigCreateSupport' in 'xcmCommsConfigTable'.
        See:    'RowStatus' in IETF SNMPv2 TC (RFC 1443/1903/2579).
        See:    'xcmHrDevMgmtCommandData' in XCMI HRX MIB and
                'xcmSecUserMgmtData' in XCMI Security MIB."
    ::= { xcmCommsDirAttributeEntry 3 }

xcmCommsDirAttributeValue OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "A directory attribute value, the contents of this
        integer-valued directory attribute, or zero if
        'xcmCommsDirAttributeType' indicates string-valued,
        and is NOT 'protocolTyped...'.

        Usage:   When directory attribute type is 'protocolTyped...' the
        particular protocol layer SHALL be specified by placing a
        a value from the enumeration 'XcmCommsStackExtProtocol' in
        'xcmCommsDirAttributeValue' for this row."
    REFERENCE
        "See:   'xcmCommsDirAttributeType' in this XCMI CC MIB
                'XcmCommsDirAttributeType' in the XCMI CC TC
                'XcmCommsStackExtProtocol' in the XCMI Comms Engine TC."
    DEFVAL      { 0 }                   -- no directory integer value
    ::= { xcmCommsDirAttributeEntry 4 }

--
--          Directory String Group (Cond Mandatory)
--
--          Implementation of this group is conditionally mandatory, ie,
--          mandatory for systems which implement directories via SNMP.

xcmCommsDirString       OBJECT IDENTIFIER ::= { xcmCommsConfigMIB 7 }

xcmCommsDirStringTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XcmCommsDirStringEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table containing string-valued directory attributes
        configured on this host system.

        Usage:  Table contains an entry for ONLY string-valued and
        configured on this host system."
    ::= { xcmCommsDirString 2 }

xcmCommsDirStringEntry OBJECT-TYPE
    SYNTAX      XcmCommsDirStringEntry


    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry containing string-valued directory attributes
        configured on this host system."
    INDEX       { xcmCommsDirRecordType,
                  xcmCommsDirRecordIndex,
                  xcmCommsDirAttributeType,
                  xcmCommsDirAttributeIndex }
    ::= { xcmCommsDirStringTable 1 }

XcmCommsDirStringEntry ::= SEQUENCE {
        --  Directory String Information
        xcmCommsDirStringRowStatus      RowStatus,
        xcmCommsDirStringValue          XcmFixedLocaleUtf8String
    }

xcmCommsDirStringRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "This object manages the row status of this conceptual row in
        the 'xcmCommsDirStringTable'.

        Usage:  Conforming implementations which support static rows
        SHALL support 'active' and 'notInService' writes to this
        'xcmCommsDirStringRowStatus' row status object; and
        SHALL clear the 'commsDirStringGroup' bit in
        'xcmCommsConfigCreateSupport' in the 'xcmCommsConfigTable'.

        Usage:  Conforming implementations which support dynamic rows
        SHALL support 'createAndGo' and 'destroy' writes to this
        'xcmCommsDirStringRowStatus' row status object; and
        SHALL set the 'commsDirStringGroup' bit in
        'xcmCommsConfigCreateSupport' in the 'xcmCommsConfigTable'.

        Usage:  Conforming implementations need NOT support dynamic row
        creation (via 'createAndGo(4)') nor dynamic row deletion (via
        'destroy(6)').

        Usage:  See section 3.4 'Secure Modes of Operation' and section
        3.5 'Secure SNMP Get/Set Requests' in XCMI Security TC, for
        details of secure modes of access to this row status object."
    REFERENCE
        "See:   'xcmCommsConfigCreateSupport' in 'xcmCommsConfigTable'.
        See:    'RowStatus' in IETF SNMPv2 TC (RFC 1443/1903/2579).
        See:    'xcmHrDevMgmtCommandData' in XCMI HRX MIB and
                'xcmSecUserMgmtData' in XCMI Security MIB."
    ::= { xcmCommsDirStringEntry 1 }

xcmCommsDirStringValue OBJECT-TYPE
    SYNTAX      XcmFixedLocaleUtf8String (SIZE (0..255))
    MAX-ACCESS  read-create


    STATUS      current
    DESCRIPTION
        "A directory attribute value, the contents of this
        string-valued directory attribute.

        Usage:  String-valued directory attributes SHALL be
        specified as UTF-8 encoded Unicode (ISO 10646) strings.

        Usage:   When directory attribute type is 'protocolTyped...' the
        particular protocol layer SHALL be specified by placing a
        a value from the enumeration 'XcmCommsStackExtProtocol' in
        'xcmCommsDirAttributeValue' for this row.

        Usage:  Conformant implementations MUST encrypt passwords, keys,
        and other security information stored in this string object."
    REFERENCE
        "See:   'xcmCommsDirAttributeType' in this XCMI CC MIB
                'XcmCommsDirAttributeType' in the XCMI CC TC."
    DEFVAL      { ''H }                 -- no directory string value
    ::= { xcmCommsDirStringEntry 2 }

--
--          Comms Protocol Group (Cond Mandatory)
--
--          Implementation of this group is conditionally mandatory, ie,
--          mandatory for systems which support discovery of available
--          communications suites and specific protocols via SNMP.

xcmCommsProtocol        OBJECT IDENTIFIER ::= { xcmCommsConfigMIB 8 }

xcmCommsProtocolTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XcmCommsProtocolEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of available communications protocol suites and
        specific communications protocols on this host system."
    ::= { xcmCommsProtocol 2 }

xcmCommsProtocolEntry OBJECT-TYPE
    SYNTAX      XcmCommsProtocolEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry for an available communications protocol suite or
        specific communications protocol on this host system."
    INDEX       { hrDeviceIndex, xcmCommsProtocolType }
    ::= { xcmCommsProtocolTable 1 }

XcmCommsProtocolEntry ::= SEQUENCE {
        --  Comms Protocol Information
        xcmCommsProtocolType            XcmCommsStackExtProtocol,
        xcmCommsProtocolRowStatus       RowStatus
    }


--
--          Comms Protocol Information
--

xcmCommsProtocolType OBJECT-TYPE
    SYNTAX      XcmCommsStackExtProtocol
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The type of an available communications protocol suite or
        specific communications protocol on this host system.

        Usage:  To indicate that a communications protocol suite is
        available, use a suite value of 'XcmCommsStackExtProtocol',
        eg, 'internetSuite(140101)' for the Internet suite.

        Usage:  To indicate that a specific communications protocol is
        available, use a specific value of 'XcmCommsStackExtProtocol',
        eg, 'internetFTP(141504)' for the Internet FTP protocol."
    REFERENCE
        "See:   'XcmCommsStackExtProtocol' in XCMI Comms Engine TC.
        See:    'protocolType' enumeration and
                'protocolTyped[Name|Address]' enumerations in
                'XcmCommsDirAttributeType' in XCMI CC TC.
        See:    'xcmCommsDirAttributeType' in XCMI CC MIB."
    ::= { xcmCommsProtocolEntry 1 }

xcmCommsProtocolRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object displays the status of individual conceptual
        rows in the 'xcmCommsProtocolTable'."
    ::= { xcmCommsProtocolEntry 2 }

--
--          Comms Config MIB Conformance Information
--
--          With Mandatory and Optional Conformance Groups

xcmCommsConfigMIBConformance
    OBJECT IDENTIFIER ::= { xcmCommsConfigMIB 2 }
xcmCommsConfigMIBGroups
    OBJECT IDENTIFIER ::= { xcmCommsConfigMIBConformance 2 }

--
--          Compliance Statements
--

xcmCommsConfigMIBCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION


        "The compliance statements for SNMP management agents that
        implement the Comms Config MIB."
    MODULE -- this module
    MANDATORY-GROUPS {
        xcmCommsConfigGroup,
        xcmCommsOptionGroup
    }

    GROUP       xcmCommsDirRecordGroup
    DESCRIPTION
        "Implementation of this group is conditionally mandatory, ie,
        mandatory for systems which implement directories via SNMP."

    GROUP       xcmCommsDirAttributeGroup
    DESCRIPTION
        "Implementation of this group is conditionally mandatory, ie,
        mandatory for systems which implement directories via SNMP."

    GROUP       xcmCommsDirStringGroup
    DESCRIPTION
        "Implementation of this group is conditionally mandatory, ie,
        mandatory for systems which implement directories via SNMP."

    GROUP       xcmCommsProtocolGroup
    DESCRIPTION
        "Implementation of this group is conditionally mandatory, ie,
        mandatory for systems which support discovery of available
        communications suites and specific protocols via SNMP."

    OBJECT      xcmCommsConfigRowStatus
    SYNTAX      INTEGER { active(1) }   -- subset of RowStatus
    DESCRIPTION
        "It is conformant to implement this object as read-only, and
        only one of the enumerated values for the 'RowStatus' textual
        convention need be supported, specifically:  active(1)."

    OBJECT      xcmCommsOptionRowStatus
    SYNTAX      INTEGER { active(1) }   -- subset of RowStatus
    DESCRIPTION
        "It is conformant to implement this object as read-only, and
        only one of the enumerated values for the 'RowStatus' textual
        convention need be supported, specifically:  active(1)."

    OBJECT      xcmCommsOptionValueString
    SYNTAX      OCTET STRING (SIZE (0..32))
    DESCRIPTION
        "It is conformant to implement this object as read-only, and
        only 32 octets maximum string length need be supported.

        Usage:  Conformant implementations MUST encrypt passwords, keys,
        and other security information stored in this string object."

    OBJECT      xcmCommsDirRecordRowStatus
    SYNTAX      INTEGER { active(1) }   -- subset of RowStatus


    MIN-ACCESS  read-only
    DESCRIPTION
        "It is conformant to implement this object as read-only, and
        only one of the enumerated values for the 'RowStatus' textual
        convention need be supported, specifically:  active(1)."

    OBJECT      xcmCommsDirRecordKeyType
    MIN-ACCESS  read-only
    DESCRIPTION
        "It is conformant to implement this object as read-only."

    OBJECT      xcmCommsDirRecordKeyInteger
    MIN-ACCESS  read-only
    DESCRIPTION
        "It is conformant to implement this object as read-only."

    OBJECT      xcmCommsDirRecordKeyString
    SYNTAX      XcmFixedLocaleUtf8String (SIZE (0..1))
    MIN-ACCESS  read-only
    DESCRIPTION
        "It is conformant to implement this object as read-only, and
        only 1 octet maximum string length need be supported."

    OBJECT      xcmCommsDirRecordParentType
    MIN-ACCESS  read-only
    DESCRIPTION
        "It is conformant to implement this object as read-only."

    OBJECT      xcmCommsDirRecordParentIndex
    MIN-ACCESS  read-only
    DESCRIPTION
        "It is conformant to implement this object as read-only."

    OBJECT      xcmCommsDirAttributeRowStatus
    SYNTAX      INTEGER { active(1) }   -- subset of RowStatus
    MIN-ACCESS  read-only
    DESCRIPTION
        "It is conformant to implement this object as read-only, and
        only one of the enumerated values for the 'RowStatus' textual
        convention need be supported, specifically:  active(1)."

    OBJECT      xcmCommsDirAttributeValue
    MIN-ACCESS  read-only
    DESCRIPTION
        "It is conformant to implement this object as read-only."

    OBJECT      xcmCommsDirStringRowStatus
    SYNTAX      INTEGER { active(1) }   -- subset of RowStatus
    MIN-ACCESS  read-only
    DESCRIPTION
        "It is conformant to implement this object as read-only, and
        only one of the enumerated values for the 'RowStatus' textual
        convention need be supported, specifically:  active(1)."


    OBJECT      xcmCommsDirStringValue
    SYNTAX      XcmFixedLocaleUtf8String (SIZE (0..32))
    MIN-ACCESS  read-only
    DESCRIPTION
        "It is conformant to implement this object as read-only, and
        only 32 octets maximum string length need be supported.

        Usage:  Conformant implementations MUST encrypt passwords, keys,
        and other security information stored in this string object."

    ::= { xcmCommsConfigMIBConformance 3 }

--
--          Conformance Groups
--

xcmCommsConfigGroup OBJECT-GROUP
    OBJECTS {
        --  Comms Config Information
        xcmCommsConfigRowStatus,
        xcmCommsConfigActiveOptionFirst,
        xcmCommsConfigActiveOptionLast,
        xcmCommsConfigGroupSupport,
        xcmCommsConfigCreateSupport,
        xcmCommsConfigUpdateSupport
    }
    STATUS      current
    DESCRIPTION
        "The Comms Config Group (Communications Configurations)."
    ::= { xcmCommsConfigMIBGroups 3 }

xcmCommsOptionGroup OBJECT-GROUP
    OBJECTS {
        --  Comms Option Information
        xcmCommsOptionRowStatus,
        xcmCommsOptionTypeOID,
        xcmCommsOptionValueSyntax,
        xcmCommsOptionValueInteger,
        xcmCommsOptionValueOID,
        xcmCommsOptionValueString,
        xcmCommsOptionValueLocalization,
        xcmCommsOptionValueCodedCharSet,
        --  Comms Option Common Cross References
        xcmCommsOptionNextIndex,
        xcmCommsOptionPreviousIndex,
        xcmCommsOptionFamilyIndex
    }
    STATUS      current
    DESCRIPTION
        "The Comms Option Group (Communications Configuration Options)."
    ::= { xcmCommsConfigMIBGroups 4 }

xcmCommsDirRecordGroup OBJECT-GROUP


    OBJECTS {
        --  Directory Record Information
        xcmCommsDirRecordRowStatus,
        xcmCommsDirRecordKeyType,
        xcmCommsDirRecordKeyInteger,
        xcmCommsDirRecordKeyString,
        xcmCommsDirRecordParentType,
        xcmCommsDirRecordParentIndex
    }
    STATUS      current
    DESCRIPTION
        "Directory Record Group."
    ::= { xcmCommsConfigMIBGroups 5 }

xcmCommsDirAttributeGroup OBJECT-GROUP
    OBJECTS {
        --  Directory Attribute Information
        xcmCommsDirAttributeRowStatus,
        xcmCommsDirAttributeValue
    }
    STATUS      current
    DESCRIPTION
        "Directory Attribute Group."
    ::= { xcmCommsConfigMIBGroups 6 }

xcmCommsDirStringGroup OBJECT-GROUP
    OBJECTS {
        --  Directory String Information
        xcmCommsDirStringRowStatus,
        xcmCommsDirStringValue
    }
    STATUS      current
    DESCRIPTION
        "Directory String Group."
    ::= { xcmCommsConfigMIBGroups 7 }

xcmCommsProtocolGroup OBJECT-GROUP
    OBJECTS {
        --  Comms Protocol Information
        xcmCommsProtocolRowStatus
    }
    STATUS      current
    DESCRIPTION
        "Comms Protocol Group (available suites and protocols)."
    ::= { xcmCommsConfigMIBGroups 8 }

END
