PACEMAKER-MIB DEFINITIONS ::= BEGIN

--
-- MIB objects for the pacemaker cluster manager implementation
--

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, Integer32,
    NOTIFICATION-TYPE, enterprises          FROM SNMPv2-SMI
    SnmpAdminString                         FROM SNMP-FRAMEWORK-MIB
    netSnmp                                 FROM NET-SNMP-MIB
    RowStatus, StorageType                  FROM SNMPv2-TC
    InetAddressType, InetAddress            FROM INET-ADDRESS-MIB
;

pacemaker MODULE-IDENTITY
    LAST-UPDATED "201906010000Z"
    ORGANIZATION "www.clusterlabs.org"
    CONTACT-INFO    
        "name:  ClusterLabs Administrators
        email:  admin@clusterlabs.org"
    DESCRIPTION "MIB objects for the Pacemaker cluster manager implementation"

    REVISION    "201906010000Z"
    DESCRIPTION "Update organization contact information"

    REVISION    "201703242100Z"
    DESCRIPTION "Add pacemakerNotificationAttributeName and pacemakerNotificationAttributeValue"

    REVISION    "201601052100Z"
    DESCRIPTION "Add pacemakerTrap and pacemakerNotificationTrap"

    REVISION    "200910062115Z"
    DESCRIPTION "Corrections after feedback from beekhof"

    REVISION    "200910051115Z"
    DESCRIPTION "First draft"

    ::= { enterprises 32723 }

--
-- top level structure
--
pacemakerNotification   OBJECT IDENTIFIER ::= { pacemaker 1 }
pacemakerTrap           OBJECT IDENTIFIER ::= { pacemaker 2 }

--
--  pacemaker Notifications
--

pacemakerNotificationNode OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(1..64))
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The node on which the status change happened."      
::= { pacemakerNotification 1 }

pacemakerNotificationResource OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(1..256))
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The name of the resource that changed the status."
::= { pacemakerNotification 2 }

pacemakerNotificationOperation OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(1..64))
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The operation that caused the status change."
::= { pacemakerNotification 3 }

pacemakerNotificationDescription OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(1..256))
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The textual output relevant error code of the operation (if any) that caused the status change."
::= { pacemakerNotification 4 }

pacemakerNotificationStatus OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The numerical representation of the status of the operation."
::= { pacemakerNotification 5 }

pacemakerNotificationReturnCode OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The return code of the operation."
::= { pacemakerNotification 6 }

pacemakerNotificationTargetReturnCode OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The expected return code of the operation."
::= { pacemakerNotification 7 }

pacemakerNotificationAttributeName OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(1..256))
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The name of the attribute."
::= { pacemakerNotification 8 }

pacemakerNotificationAttributeValue OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(1..256))
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The value of the attribute."
::= { pacemakerNotification 9 }

--
--  pacemaker Traps
--

pacemakerNotificationTrap NOTIFICATION-TYPE
    OBJECTS {
        pacemakerNotificationNode,
        pacemakerNotificationResource,
        pacemakerNotificationOperation,
        pacemakerNotificationDescription,
        pacemakerNotificationStatus,
        pacemakerNotificationReturnCode,
        pacemakerNotificationTargetReturnCode,
        pacemakerNotificationAttributeName,
        pacemakerNotificationAttributeValue
    }
    STATUS      current
    DESCRIPTION
        "Pacemaker notification trap"
::= { pacemakerTrap 1 }

END
