-- ****************************************************************************
--
--                   Threshold Management Functions
--         Management Information Base for SNMP Network Management
--
--
--      Copyright 2002 Compaq Information Technologies Group, L.P.
--
--      Compaq and the Compaq logo are trademarks of Compaq Information
--      Technologies Group, L.P. in the U.S. and/or other countries.  All
--      other product names mentioned herein may be trademarks of their
--      respective companies.
--
--      Compaq shall not be liable for technical or editorial errors or
--      omissions contained herein. The information in this document is
--      provided "as is" without warranty of any kind and is subject to
--      change without notice.  The warranties for Compaq products are set
--      forth in the express limited warranty statements accompanying such
--      products. Nothing herein should be construed as constituting an
--      additional warranty.
--
--      Refer to the READMIB.RDM file for more information about the
--      organization of the information in the Compaq Enterprise.
--
--      The Compaq Enterprise number is 232.
--      The ASN.1 prefix to, and including the Compaq Enterprise is:
--           1.3.6.1.4.1.232
--
-- ****************************************************************************

CPQTHRSH-MIB DEFINITIONS ::= BEGIN

    IMPORTS
        compaq                  FROM CPQHOST-MIB
        enterprises             FROM RFC1155-SMI
        Counter                 FROM RFC1155-SMI
        DisplayString           FROM RFC1213-MIB
        OBJECT-TYPE             FROM RFC-1212
        TRAP-TYPE               FROM RFC-1215
        sysName                 FROM RFC1213-MIB
        cpqHoTrapFlags          FROM CPQHOST-MIB;

--  compaq             OBJECT IDENTIFIER ::= { enterprises 232 }

    cpqThresholdMgmt   OBJECT IDENTIFIER ::= { compaq 10 }
    cpqMeMibRev        OBJECT IDENTIFIER ::= { cpqThresholdMgmt 1 }
    cpqMeComponent     OBJECT IDENTIFIER ::= { cpqThresholdMgmt 2 }

    cpqMeInterface     OBJECT IDENTIFIER ::= { cpqMeComponent 1 }
    cpqMeAlarm         OBJECT IDENTIFIER ::= { cpqMeComponent 2 }

    cpqMeOsCommon      OBJECT IDENTIFIER ::= { cpqMeInterface 4 }

-- ****************************************************************************
--   Threshold Information MIB Revision
--   ==================================
--
-- The compaq enterprise               (1.3.6.1.4.1.232)
--      cpqThresholdMgmt Group         (1.3.6.1.4.1.232.10)
--       cpqMeMibRev Group             (1.3.6.1.4.1.232.10.1)
--
--
--      An SNMP agent conforming to this document will return a
--      cpqMeMibRevMajor of one (1) and a cpqMeMibRevMinor of three (3).
--
--      Implementation of the cpqMeMibRev group is mandatory for all agents
--      supporting the Compaq Threshold Management MIB.
--
-- ****************************************************************************

    cpqMeMibRevMajor OBJECT-TYPE
        SYNTAX  INTEGER (1..65535)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
            "The Major Revision level of the MIB.

            A change in the major revision level represents a major change
            in the architecture of the MIB.  A change in the major revision
            level may indicate a significant change in the information
            supported and/or the meaning of the supported information,
            correct interpretation of data may require a MIB document with
            the same major revision level."
        ::= { cpqMeMibRev 1 }

    cpqMeMibRevMinor OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
            "The Minor Revision level of the MIB.

            A change in the minor revision level may represent some minor
            additional support, no changes to any pre-existing information
            has occurred."
        ::= { cpqMeMibRev 2 }

    cpqMeMibCondition OBJECT-TYPE
        SYNTAX  INTEGER {
            other(1),
            ok(2),
            degraded(3),
            failed(4)
            }
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
            "The overall condition.

             This object represents the overal status of the Compaq
             threshold management system represented by this MIB."
        ::= { cpqMeMibRev 3 }

-- ****************************************************************************
--   Threshold Information OS Common Group
--   =====================================
--
-- The compaq enterprise               (1.3.6.1.4.1.232)
--      cpqThresholdMgmt Group         (1.3.6.1.4.1.232.10)
--       cpqMeComponent Group          (1.3.6.1.4.1.232.10.2)
--        cpqMeInterface Group         (1.3.6.1.4.1.232.10.2.1)
--         cpqMeOsCommon Group         (1.3.6.1.4.1.232.10.2.1.4)
--          cpqMeOsCommonModuleTable   (1.3.6.1.4.1.232.10.2.1.4.2) deprecated
--
--  Implementation of the cpqMeOsCommon group is mandatory for all
--  agents that support the Compaq Threshold Management MIB.
--
-- ****************************************************************************

    cpqMeOsCommonPollFreq OBJECT-TYPE
        SYNTAX  INTEGER (1..2147483647)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "The Insight Agent's minimum polling frequency.

            The minimum frequency, in seconds, at which the Insight Agent
            will permit the cpqMeAlarmInterval to be SET (for an entry in
            the cpqMeAlarm table).  Changing this variable to smaller values
            will allow a management station to modify or add entries in the
            cpqMeAlarm table that can have smaller cpqMeAlarmInterval values
            and will therefore be polled more frequently.  An agent may also
            choose to fail any request to change the poll frequency to a
            value that would severely impact system performance."
        ::= { cpqMeOsCommon 1 }

    cpqMeOsCommonModuleTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF CpqMeOsCommonModuleEntry
        ACCESS  not-accessible
        STATUS  deprecated
        DESCRIPTION
            "A table of software modules that provide an interface to the
            device this MIB describes."
        ::= { cpqMeOsCommon 2 }

    cpqMeOsCommonModuleEntry OBJECT-TYPE
        SYNTAX  CpqMeOsCommonModuleEntry
        ACCESS  not-accessible
        STATUS  deprecated
        DESCRIPTION
            "A description of a software modules that provide an interface
            to the device this MIB describes."
        INDEX   { cpqMeOsCommonModuleIndex }
        ::= { cpqMeOsCommonModuleTable 1 }

        CpqMeOsCommonModuleEntry ::= SEQUENCE {
            cpqMeOsCommonModuleIndex       INTEGER,
            cpqMeOsCommonModuleName        DisplayString,
            cpqMeOsCommonModuleVersion     DisplayString,
            cpqMeOsCommonModuleDate        OCTET STRING,
            cpqMeOsCommonModulePurpose     DisplayString
        }

    cpqMeOsCommonModuleIndex OBJECT-TYPE
        SYNTAX  INTEGER (0..255)
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
            "A unique index for this module description."
        ::= { cpqMeOsCommonModuleEntry 1 }

    cpqMeOsCommonModuleName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (0..255))
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
            "The module name."
        ::= { cpqMeOsCommonModuleEntry 2 }

    cpqMeOsCommonModuleVersion OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (0..5))
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
            "The module version in XX.YY format.

            Where XX is the major version number and YY is the minor version
            number.  This field will be a null (size 0) string if the agent
            cannot provide the module version."
        ::= { cpqMeOsCommonModuleEntry 3 }

    cpqMeOsCommonModuleDate OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE (7))
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
            "The module date.

             field  octets  contents                  range
             =====  ======  =======                  =====
               1      1-2   year                      0..65536
               2       3    month                     1..12
               3       4    day                       1..31
               4       5    hour                      0..23
               5       6    minute                    0..59
               6       7    second                    0..60
                            (use 60 for leap-second)


            This field will be set to year = 0 if the agent cannot provide
            the module date.  The hour, minute, and second field will be set
            to zero (0) if they are not relevant.  The year field is set
            with the most significant octect first."
        ::= { cpqMeOsCommonModuleEntry 4 }

    cpqMeOsCommonModulePurpose OBJECT-TYPE
           SYNTAX  DisplayString (SIZE (0..255))
           ACCESS  read-only
           STATUS  deprecated
           DESCRIPTION
               "The purpose of the module described in this entry."
           ::= { cpqMeOsCommonModuleEntry 5 }

-- ****************************************************************************
--   Threshold Information Alarm Group
--   =================================
--
-- The compaq enterprise               (1.3.6.1.4.1.232)
--      cpqThresholdMgmt Group         (1.3.6.1.4.1.232.10)
--       cpqMeComponent Group          (1.3.6.1.4.1.232.10.2)
--        cpqMeAlarm Group             (1.3.6.1.4.1.232.10.2.2)
--         cpqMeAlarmTable             (1.3.6.1.4.1.232.10.2.2.2)
--
--      The cpqMeAlarms group describes the table for controlling Compaq
--      Threshold Management software's user definable threshold functions.
--
--      The Compaq Threshold Management alarm group provides a flexible way
--      for users and/or management software to start the sampling of any
--      integer SNMP object on the server being managed for comparison to
--      given thresholds.  Once started the Compaq Threshold Management will
--      poll the selected object, compare it to given thresholds, and
--      issue an SNMP trap if the value crosses the threshold.  Only
--      variables that resolve to an ASN.1 primitive type of INTEGER
--      (INTEGER, Counter, Gauge, or TimeTicks) may be monitored in this way.
--
--      This function has a hysteresis mechanism to limit the generation of
--      trap events.  This mechanism generates one event as a threshold is
--      crossed in the appropriate direction.  No more events are generated
--      for that threshold until the opposite threshold is crossed.
--
--
--
--      Implementation of the cpqMeAlarm group is optional for agents
--      supporting the Compaq Threshold Management MIB.
--
-- ****************************************************************************


    cpqMeAlarmNextIndex OBJECT-TYPE
           SYNTAX INTEGER
           ACCESS read-only
           STATUS mandatory
           DESCRIPTION
               "The index of the next available entry in the cpqMeAlarm
                table.  If the maximum number of entries to the cpqMeAlarm
                table has been reached, this index will contain -1."
           ::= { cpqMeAlarm 1 }


    cpqMeAlarmTable OBJECT-TYPE
           SYNTAX SEQUENCE OF CpqMeAlarmEntry
           ACCESS not-accessible
           STATUS mandatory
           DESCRIPTION
               "A list of alarm entries."
           ::= { cpqMeAlarm 2 }

    cpqMeAlarmEntry OBJECT-TYPE
           SYNTAX CpqMeAlarmEntry
           ACCESS not-accessible
           STATUS mandatory
           DESCRIPTION
               "A list of parameters that set up a periodic checking
                for alarm conditions."
           INDEX { cpqMeAlarmIndex }
           ::= { cpqMeAlarmTable 1 }

           CpqMeAlarmEntry ::= SEQUENCE {
              cpqMeAlarmIndex                      INTEGER,
              cpqMeAlarmInterval                   INTEGER,
              cpqMeAlarmVariable                   OBJECT IDENTIFIER,
              cpqMeAlarmSampleType                 INTEGER,
              cpqMeAlarmValue                      INTEGER,
              cpqMeAlarmStartupAlarm               INTEGER,
              cpqMeAlarmRisingThreshold            INTEGER,
              cpqMeAlarmFallingThreshold           INTEGER,
              cpqMeAlarmPermanence                 INTEGER,
              cpqMeAlarmOwner                      DisplayString,
              cpqMeAlarmStatus                     INTEGER,
              cpqMeAlarmSeverity                   INTEGER,
              cpqMeAlarmExtendedDescription        DisplayString
           }

    cpqMeAlarmIndex OBJECT-TYPE
          SYNTAX INTEGER (1..65535)
          ACCESS read-only
          STATUS mandatory
          DESCRIPTION
              "An index that uniquely identifies an entry in the
              cpqMeAlarm table.  Each such entry defines a
              diagnostic sample at a particular interval
              for an object on the device."
          ::= { cpqMeAlarmEntry 1 }

    cpqMeAlarmInterval OBJECT-TYPE
           SYNTAX INTEGER (1..2147483647)
           ACCESS read-write
           STATUS mandatory
           DESCRIPTION
              "The interval, in seconds, between consecutive samples of
               the data.  When setting this variable, care should be given
               to ensure that the variable being monitored will not exceed
               2^31 - 1 and roll over.

               The first sample will be taken immediately upon the
               cpqMeAlarmStatus being set to valid(1).

               This object may not be modified if the associated
               cpqMeAlarmStatus object is equal to valid(1)."
          ::= { cpqMeAlarmEntry 2 }

    cpqMeAlarmVariable OBJECT-TYPE
           SYNTAX OBJECT IDENTIFIER
           ACCESS read-write
           STATUS mandatory
           DESCRIPTION
              "The object identifier of the particular variable to be
               sampled.  Only variables that resolve to an ASN.1 primitive
               type of INTEGER (INTEGER, Counter, Gauge, or TimeTicks) may
               be sampled.

               Because SNMP access control is articulated entirely
               in terms of the contents of MIB views, no access
               control mechanism exists that can restrict the value of
               this object to identify only those objects that exist
               in a particular MIB view.  Because there is thus no
               acceptable means of restricting the read access that
               could be obtained through the alarm mechanism, the
               agent must only grant write access to this object in
               those views that have read access to all objects on
               the agent.

               During a set operation, if the supplied variable
               name is not available in the selected MIB view, a
               badValue error must be returned.  If at any time
               the variable name of an established cpqMeAlarmEntry is
               no longer available in the selected MIB view, the
               agent must change the status of this cpqMeAlarmEntry
               to tempUnavailable(5).

               This object may not be modified if the associated
               cpqMeAlarmStatus object is equal to valid(1)."
          ::= { cpqMeAlarmEntry 3 }

    cpqMeAlarmSampleType OBJECT-TYPE
           SYNTAX INTEGER {
               absoluteValue(1),
               deltaValue(2),
               absSuppressRisingTrap(3),
               absSuppressFallingTrap(4)
           }
           ACCESS read-write
           STATUS mandatory
           DESCRIPTION
          "The method of sampling the selected variable and
           calculating the value to be compared against the
           thresholds.

           If the sample type (cpqMeAlarmSampleType) is
           absoluteValue(1), the most recent sampled value of
           the selected variable (cpqMeAlarmVariable) will be
           compared directly with the thresholds
           (cpqMeAlarmRisingThreshold and cpqMeAlarmFallingThreshold).

           If the sample type (cpqMeAlarmSampleType) is
           deltaValue(2), the most recently sampled value minus
           the previous sampled value is compared with the threshold
           values (cpqMeAlarmRisingThreshold and
           cpqMeAlarmFallingThreshold).

           If the sample type is absSupressRisingValue(3), only
           comparisons with the cpqMeAlarmFallingThreshold are
           performed.  If the sample type is absSupressFallingValue(4),
           only comparisons with the cpqMeAlarmRisingThreshold are
           performed.

               This object may not be modified if the associated
               cpqMeAlarmStatus object is equal to valid(1)."
           ::= { cpqMeAlarmEntry 4 }

    cpqMeAlarmValue OBJECT-TYPE
           SYNTAX INTEGER
           ACCESS read-only
           STATUS mandatory
           DESCRIPTION
                "The value of the object identifier (cpqMeAlarmVariable)
                during the last sampling period.  The value during the
                current sampling period is not made available until
                the period is completed.

                If the sample type (cpqMeAlarmSampleType) is
                absoluteValue(1), absSupressRisingValue(3), or
                absSupressFallingValue(4), the value (cpqMeAlarmValue)
                should become the actual value obtained during this
                sampling period.

                If the sample type (cpqMeAlarmSampleType) is
                deltaValue(2), the value (cpqMeAlarmValue) should
                become the most recently sampled value minus the
                previous sample (cpqMeAlarmValue)."
           ::= { cpqMeAlarmEntry 5 }

    cpqMeAlarmStartupAlarm OBJECT-TYPE
           SYNTAX INTEGER {
               risingAlarm(1),
               fallingAlarm(2),
               risingOrFallingAlarm(3)
           }
           ACCESS read-write
           STATUS mandatory
           DESCRIPTION
               "The alarm that may be sent when this entry is first
                set to valid.

                If the sample type (cpqMeAlarmSampleType) is
                absoluteValue(1), then the following comparisons are
                used to generate an event.

                If cpqMeAlarmStartupAlarm is equal to risingAlarm(1) or
                risingOrFallingAlarm(3), then a single event will be
                generated if the first sample after this entry becomes
                valid is greater than or equal to this threshold.  If
                cpqMeAlarmStartupAlarm is equal to fallingAlarm(2) or
                risingOrFallingAlarm(3), then a single event will be
                generated if the first sample after this entry becomes
                valid is less than or equal to this threshold.

               This object may not be modified if the associated
               cpqMeAlarmStatus object is equal to valid(1)."
           ::= { cpqMeAlarmEntry 6 }

    cpqMeAlarmRisingThreshold OBJECT-TYPE
           SYNTAX INTEGER
           ACCESS read-write
           STATUS mandatory
           DESCRIPTION
               "A threshold for the sampled object identifier
               (cpqMeAlarmVariable).

               If the sample type (cpqMeAlarmSampleType) is
               absoluteValue(1), then the following describes the
               comparison.  When the current sampled value is greater
               than or equal to this threshold, and the value
               (cpqMeAlarmValue) at the last sampling interval was
               less than this threshold, a single event will be generated.
               If cpqMeAlarmStartupAlarm is equal to risingAlarm(1) or
               risingOrFallingAlarm(3), then a single event will be
               generated if the first sample after this entry becomes
               valid is greater than or equal to this threshold.
               After a rising event is generated, another such event
               will not be generated until the sampled value
               falls below this threshold and reaches the falling
               threshold (cpaMeAlarmFallingThreshold).

               If the sample type (cpqMeAlarmSampleType) is
               deltaValue(2), then the following describes the
               comparison.  When the most recently sampled value minus
               the previous sampled value is greater than or equal to
               the threshold (cpqMeAlarmRisingThreshold), and the
               current alarm value (cpqMeAlarmValue) is less than the
               threshold value (cpqMeAlarmRisingThreshold) a single
               event will be generated.  After a rising event is
               generated, another such event will not be generated
               until the most recently sampled value minus the previous
               sampled value falls below this threshold
               (cpqMeAlarmRisingThreshold) and reaches the falling
               threshold (cpqMeAlarmFallingThreshold).

               This object may not be modified if the associated
               cpqMeAlarmStatus object is equal to valid(1)."
          ::= { cpqMeAlarmEntry 7 }

    cpqMeAlarmFallingThreshold OBJECT-TYPE
           SYNTAX INTEGER
           ACCESS read-write
           STATUS mandatory
           DESCRIPTION
               "A threshold for the sampled object identifier
               (cpqMeAlarmVariable).

               If the sample type (cpqMeAlarmSampleType) is
               absoluteValue(1), then the following describes the
               comparison.  When the current sampled value is less
               than or equal to this threshold, and the value
               (cpqMeAlarmValue) at the last sampling interval was
               greater than this threshold, a single event will be
               generated.  If cpqMeAlarmStartupAlarm is equal to
               fallingAlarm(2) or risingOrFallingAlarm(3), then a
               single event will be generated if the first sample after
               this entry becomes valid is less than or equal to this
               threshold.  After a falling event is generated, another
               such event will not be generated until the sampled value
               rises above this threshold and reaches the rising
               threshold (cpaMeAlarmRisingThreshold).

               If the sample type (cpqMeAlarmSampleType) is
               deltaValue(2), then the following describes the
               comparison.  When the most recently sampled value minus
               the previous sampled value is less than or equal to
               the threshold (cpqMeAlarmFallingThreshold), and the
               current alarm value (cpqMeAlarmValue) is greater than the
               threshold value (cpqMeAlarmFallingThreshold) a single
               event will be generated. After a falling event is
               generated, another such event will not be generated
               until the most recently sampled value minus the previous
               sampled value rises above this threshold
               (cpqMeAlarmFallingThreshold) and reaches the rising
               threshold (cpqMeAlarmRisingThreshold).

               This object may not be modified if the associated
               cpqMeAlarmStatus object is equal to valid(1)."
          ::= { cpqMeAlarmEntry 8 }

    cpqMeAlarmPermanence OBJECT-TYPE
           SYNTAX INTEGER {
               temporary(1),
               permanent(2)
               }
           ACCESS read-write
           STATUS mandatory
           DESCRIPTION
              "This specifies if the threshold management software should
              recreate this entry if it is brought down and then
              restarted.  A temporary entry will not be recreated after a
              restart.  A permanent entry will be recreated after a
              restart and requires an explicit invalidation to be
              removed."
          ::= { cpqMeAlarmEntry 9 }

    cpqMeAlarmOwner OBJECT-TYPE
       SYNTAX DisplayString (SIZE (0..127))
       ACCESS read-write
       STATUS mandatory
       DESCRIPTION
          "The entity that configured this entry and is
          therefore using the resources assigned to it.

          This string is used to model an administratively
          assigned name of the owner of a resource. This
          information is taken from the NVT ASCII character set.
          It is suggested that this name contain one or more
          of the following:
          IP address, management station name, network manager's
          name, location, or phone number.
          In some cases the agent itself will be the owner of
          an entry.  In these cases, this string shall be set
          to a string starting with 'monitor'.

          SNMP access control is articulated entirely in terms of
          the contents of MIB views; access to a particular SNMP
          object instance depends only upon its presence or
          absence in a particular MIB view and never upon its
          value or the value of related object instances. Thus,
          objects of this type afford resolution of resource
          contention only among cooperating managers; they
          realize no access control function with respect
          to uncooperative parties."
          ::= { cpqMeAlarmEntry 10 }

    cpqMeAlarmStatus OBJECT-TYPE
       SYNTAX INTEGER {
           valid(1),
           createRequest(2),
           underCreation(3),
           invalid(4),
           tempUnavailable(5)
       }
       ACCESS read-write
       STATUS mandatory
       DESCRIPTION
          "The status of this alarm entry.

           Setting this object to the value invalid(4) has the
           effect of invalidating the corresponding entry.
           That is, it effectively disassociates the mapping
           identified with said entry.
           It is an implementation-specific matter as to whether
           the agent removes an invalidated entry from the table.
           Accordingly, management stations must be prepared to
           receive tabular information from agents that corresponds
           to entries currently not in use.  Proper
           interpretation of such entries requires examination
           of the relevant cpqMeAlarmStatus object.

           An existing instance of this object cannot be set to
           createRequest(2).  This object may only be set to
           createRequest(2) when this instance is created.  When
           this object is created, the agent may wish to create
           supplemental object instances to complete a conceptual
           row in this table.  Immediately after completing the
           create operation, the agent must set this object to
           underCreation(3).

           Entries shall exist in the underCreation(3) state until
           the management station is finished configuring the
           entry and sets this object to valid(1) or aborts,
           setting this object to invalid(4).  The agent will
           deny a request to modify an underCreation(3) entry to
           be that of createRequest(2) in order to lessen problems
           arising when multiple management stations may be trying
           to add an entry with the same index.  If the agent
           determines that an entry has been in the
           underCreation(3) state for an abnormally long time,
           it may decide that the management station has
           crashed.  If the agent makes this decision,
           it may set this object to invalid(4) to reclaim the
           entry.  A prudent agent will understand that the
           management station may need to wait for human input
           and will allow for that possibility in its
           determination of this abnormally long period.

           If the agent has an entry which is valid(4) and it
           is unable to query the particular ASN.1 object specified,
           the agent should set the status to tempUnavailable(5).
           The agent should continue to query that ASN.1 object,
           and upon a successful query, the agent should set the
           status back to valid(4)."
          ::= { cpqMeAlarmEntry 11 }

    cpqMeAlarmSeverity OBJECT-TYPE
       SYNTAX INTEGER {
           unknown(1),
           normal(2),
           minor(3),
           warning(4),
           major(5),
           critical(6)
       }
       ACCESS read-write
       STATUS mandatory
       DESCRIPTION
          "This is used to correlate the severity of a particular alarm
           entry.  The management console can use this to relate the
           severity of an alarm entry to the end user."
          ::= {cpqMeAlarmEntry 12}

    cpqMeAlarmExtendedDescription OBJECT-TYPE
       SYNTAX DisplayString (SIZE (0..127))
       ACCESS read-write
       STATUS mandatory
       DESCRIPTION
          "This string contains meaningful information about the MIB
           variable which has the threshold set upon it.  This information
           will be bound to a trap and is intended to allow a management
           console to have specific customized information about the MIB
           variable which caused the trap."
          ::= {cpqMeAlarmEntry 13}

-- ****************************************************************************
--   Threshold Management Trap Definitions
--   =====================================
--
--  The SNMP trap messages must not be bigger than 484 octets (bytes).
--
--  Trap support in an SNMP agent implementation is optional.  An SNMP
--  agent implementation may support all, some, or none of the traps.
--  If traps are supported, The user should be provided with the option of
--  disabling traps.
--
--
-- **************************************************************************

    cpqMeRisingAlarm TRAP-TYPE
        ENTERPRISE compaq
        VARIABLES  { cpqMeAlarmVariable, cpqMeAlarmSampleType,
                     cpqMeAlarmValue, cpqMeAlarmRisingThreshold,
                     cpqMeAlarmOwner }
        DESCRIPTION
            "Rising Threshold passed.

             An alarm entry has crossed its rising threshold.  The
             instances of those objects contained within the variable
             list are those of the alarm entry which generated this trap."

              --#TYPE "Rising Threshold Passed"
              --#SUMMARY "%s: Variable %s has value %d >= %d."
              --#ARGUMENTS {4,0,2,3}
              --#SEVERITY CRITICAL
              --#TIMEINDEX 99

        ::= 10001

    cpqMeFallingAlarm TRAP-TYPE
        ENTERPRISE compaq
        VARIABLES  { cpqMeAlarmVariable, cpqMeAlarmSampleType,
                     cpqMeAlarmValue, cpqMeAlarmFallingThreshold,
                     cpqMeAlarmOwner }
        DESCRIPTION
            "Falling Threshold passed.

             An alarm entry has crossed its falling threshold.  The
             instances of those objects contained within the variable
             list are those of the alarm entry which generated this trap."

              --#TYPE "Falling Threshold Passed"
              --#SUMMARY "%s: Variable %s has value %d <= %d."
              --#ARGUMENTS {4,0,2,3}
              --#SEVERITY CRITICAL
              --#TIMEINDEX 99

        ::= 10002


    cpqMe2RisingAlarm TRAP-TYPE
        ENTERPRISE compaq
        VARIABLES  { sysName, cpqHoTrapFlags,
                     cpqMeAlarmVariable, cpqMeAlarmSampleType,
                     cpqMeAlarmValue, cpqMeAlarmRisingThreshold,
                     cpqMeAlarmOwner }
        DESCRIPTION
            "Rising Threshold passed.

             An alarm entry has crossed its rising threshold.  The
             instances of those objects contained within the variable
             list are those of the alarm entry which generated this trap."

              --#TYPE "Rising Threshold Passed"
              --#SUMMARY "%s: Variable %s has value %d >= %d."
              --#ARGUMENTS {6,2,4,5}
              --#SEVERITY CRITICAL
              --#TIMEINDEX 99

        ::= 10003

    cpqMe2FallingAlarm TRAP-TYPE
        ENTERPRISE compaq
        VARIABLES  { sysName, cpqHoTrapFlags,
                     cpqMeAlarmVariable, cpqMeAlarmSampleType,
                     cpqMeAlarmValue, cpqMeAlarmFallingThreshold,
                     cpqMeAlarmOwner }
        DESCRIPTION
            "Falling Threshold passed.

             An alarm entry has crossed its falling threshold.  The
             instances of those objects contained within the variable
             list are those of the alarm entry which generated this trap."

              --#TYPE "Falling Threshold Passed"
              --#SUMMARY "%s: Variable %s has value %d <= %d."
              --#ARGUMENTS {6,2,4,5}
              --#SEVERITY CRITICAL
              --#TIMEINDEX 99

        ::= 10004


    cpqMeRisingAlarmExtended TRAP-TYPE
        ENTERPRISE compaq
        VARIABLES  { sysName, cpqHoTrapFlags,
                     cpqMeAlarmVariable, cpqMeAlarmSampleType,
                     cpqMeAlarmValue, cpqMeAlarmRisingThreshold,
                     cpqMeAlarmOwner, cpqMeAlarmSeverity,
                     cpqMeAlarmExtendedDescription }
        DESCRIPTION
            "Rising Threshold passed.

             An alarm entry has crossed its rising threshold.  The
             instances of those objects contained within the variable
             list are those of the alarm entry which generated this trap."

              --#TYPE "Rising Threshold Passed"
              --#SUMMARY "%s: Variable %s has value %d >= %d."
              --#ARGUMENTS {6,2,4,5}
              --#SEVERITY CRITICAL
              --#TIMEINDEX 99

        ::= 10005

    cpqMeFallingAlarmExtended TRAP-TYPE
        ENTERPRISE compaq
        VARIABLES  { sysName, cpqHoTrapFlags,
                     cpqMeAlarmVariable, cpqMeAlarmSampleType,
                     cpqMeAlarmValue, cpqMeAlarmFallingThreshold,
                     cpqMeAlarmOwner, cpqMeAlarmSeverity,
                     cpqMeAlarmExtendedDescription }
        DESCRIPTION
            "Falling Threshold passed.

             An alarm entry has crossed its falling threshold.  The
             instances of those objects contained within the variable
             list are those of the alarm entry which generated this trap."

              --#TYPE "Falling Threshold Passed"
              --#SUMMARY "%s: Variable %s has value %d <= %d."
              --#ARGUMENTS {6,2,4,5}
              --#SEVERITY CRITICAL
              --#TIMEINDEX 99

        ::= 10006

END

