HP-ICF-INST-MIB DEFINITIONS ::= BEGIN

IMPORTS
    OBJECT-TYPE, MODULE-IDENTITY, Integer32, Unsigned32 
        FROM SNMPv2-SMI
    MODULE-COMPLIANCE, OBJECT-GROUP
        FROM SNMPv2-CONF
    TruthValue, DisplayString
        FROM SNMPv2-TC
    hpSwitch
        FROM HP-ICF-OID;

hpicfInstMIB MODULE-IDENTITY
    LAST-UPDATED "200709070000Z"
    ORGANIZATION "HP Networking"
    CONTACT-INFO "Hewlett-Packard Company
                  8000 Foothills Blvd.
                  Roseville, CA 95747"
    DESCRIPTION  "This MIB module contains HP proprietary
                  definitions for Instrumentation."

    REVISION     "200709070000Z"
    DESCRIPTION  "Initial revision."

    ::= { hpSwitch 45 }

-- **********************************************************************
-- The Instrumentation MIB Groups
-- **********************************************************************

hpicfInstObjects OBJECT IDENTIFIER
    ::= { hpicfInstMIB 1 }

hpicfInstConformance OBJECT IDENTIFIER
    ::= { hpicfInstMIB 2 }

hpicfInstGroups OBJECT IDENTIFIER
    ::= { hpicfInstConformance 1 }

hpicfInstCompliances OBJECT IDENTIFIER
    ::= { hpicfInstConformance 2 }

-- **********************************************************************
-- Start of MIB objects
-- **********************************************************************

hpicfInstEnable OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The operational status of Instrumentation
                 on this switch."
    DEFVAL      { true }
    ::= { hpicfInstObjects 1 }

hpicfInstMaxMemMB OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "The maximum memory that can be used by Instrumentation,
		 in megabytes."
    DEFVAL      { 2 }
    ::= { hpicfInstObjects 2 }

-- Start of hpicfInstParameterTable **********************************

hpicfInstParameterTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF HpicfInstParameterEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "Values of monitored instrumentation parameters."
    ::= { hpicfInstObjects 3 }

hpicfInstParameterEntry OBJECT-TYPE
    SYNTAX      HpicfInstParameterEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "An entry in the hpicfInstParameterTable."
    INDEX       { hpicfInstParameterIndex,
                  hpicfInstInterfaceIndex,
                  hpicfInstIntervalIndex }
    ::= { hpicfInstParameterTable 1 }

HpicfInstParameterEntry ::= SEQUENCE {
    hpicfInstParameterIndex     Integer32,
    hpicfInstInterfaceIndex     Integer32,
    hpicfInstIntervalIndex      Integer32,
    hpicfInstParameterName      DisplayString,
    hpicfInstIntervalName       DisplayString,
    hpicfInstParameterValue     Unsigned32,
    hpicfInstParamValMin        Unsigned32,
    hpicfInstParamValMax        Unsigned32 }

hpicfInstParameterIndex OBJECT-TYPE
    SYNTAX      Integer32 (1..65535)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "The index of the parameter."
    ::= { hpicfInstParameterEntry 1 }

hpicfInstInterfaceIndex OBJECT-TYPE
    SYNTAX      Integer32 (1..65535)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "Interface index i.e. port number for per port parameters 
		 and 0 for global parameters."
    ::= { hpicfInstParameterEntry 2 }

hpicfInstIntervalIndex OBJECT-TYPE
    SYNTAX      Integer32 (1..65535)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "The index of the interval."
    ::= { hpicfInstParameterEntry 3 }

hpicfInstParameterName OBJECT-TYPE
    SYNTAX      DisplayString( SIZE( 0..20 ) )
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The name of the parameter."
    ::= { hpicfInstParameterEntry 4 }

hpicfInstIntervalName OBJECT-TYPE
    SYNTAX      DisplayString( SIZE( 0..20 ) )
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The name of the interval."
    ::= { hpicfInstParameterEntry 5 }

hpicfInstParameterValue OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The current parameter value for the given interface
                 and interval."
    ::= { hpicfInstParameterEntry 6 }

hpicfInstParamValMin OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The minimum value of the parameter for the 
		 given interface and interval."
    ::= { hpicfInstParameterEntry 7 }

hpicfInstParamValMax OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The maximum value of the parameter for the 
		 given interface and interval."
    ::= { hpicfInstParameterEntry 8 }

-- End of hpicfInstParameterTable ************************************

-- **********************************************************************
-- Conformance Information
-- **********************************************************************

hpicfInstBaseGroup OBJECT-GROUP
    OBJECTS   { hpicfInstEnable,
                hpicfInstMaxMemMB,
                hpicfInstParameterName,
                hpicfInstIntervalName,
                hpicfInstParameterValue,
                hpicfInstParamValMin,
                hpicfInstParamValMax }
    STATUS      current
    DESCRIPTION "A collection of objects to support basic Instrumentation
                 configuration on HP switches."
    ::= { hpicfInstGroups 2 }

-- **********************************************************************
-- Compliance statements
-- **********************************************************************

hpicfInstBaseCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION "The compliance statement for HP switches running
                 Instrumentation and implementing the HP-ICF-INST MIB."
    MODULE  -- this module
    MANDATORY-GROUPS { hpicfInstBaseGroup }
    ::= { hpicfInstCompliances 1 }

END
