ATEN-IPMI-MIB DEFINITIONS ::= BEGIN

--
-- Top-level infrastructure of the ATEN CORP. enterprise MIB tree
--

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, enterprises, Integer32 FROM SNMPv2-SMI;

aten MODULE-IDENTITY
    LAST-UPDATED "200903201150Z"
    ORGANIZATION "www.aten.com.tw"
    CONTACT-INFO "email:shuyufu@aten.com.tw"
    DESCRIPTION  "Top-level infrastructure of the ATEN CORP. enterprise MIB tree"
    REVISION     "200903201150Z"
    DESCRIPTION  "First draft"
    ::= { enterprises 21317 }

--
--  ATEN CORP. enterprise-specific management objects
--

ipmi    OBJECT IDENTIFIER ::= { aten 1 }

event    OBJECT IDENTIFIER ::= { ipmi 1 }
boardinfo    OBJECT IDENTIFIER ::= { ipmi 5 }
hardwareinfo    OBJECT IDENTIFIER ::= { ipmi 6 }

pef    OBJECT IDENTIFIER ::= { event 4 }

--
--  MIB Module Object Types
--
pefActionSupport OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION "Actions supported"
    ::= { pef 2 }

sel         OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Number of SELs"
    ::= { ipmi 2 }

sensorTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF SensorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A list of sensors.  The number of entries is
            given by the value of ifNumber."
    ::= { ipmi 3 }

sensorEntry OBJECT-TYPE
    SYNTAX      SensorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "An entry containing management information applicable to a
            particular sensor."
    INDEX   { sensorNumber }
    ::= { sensorTable 1 }

SensorEntry ::=
    SEQUENCE {
        sensorNumber                Integer32,
        sensorReading               Integer32,
        sensorPositiveHysteresis    Integer32,
        sensorNegativeHysteresis    Integer32,
        lncThreshold                Integer32,
        lcThreshold                 Integer32,
        lnrThreshold                Integer32,
        uncThreshold                Integer32,
        ucThreshold                 Integer32,
        unrThreshold                Integer32,
        eventAssertionEnable        Integer32,
        eventDeassertionEnable      Integer32,
        sensorIDString              OCTET STRING (SIZE(16))
    }

sensorNumber OBJECT-TYPE
    SYNTAX      Integer32 (1..2147483647)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "A unique value, greater than zero, for each interface.  It
            is recommended that values are assigned contiguously
            starting from 1.  The value for each interface sub-layer
            must remain constant at least from one re-initialization of
            the entity's network management system to the next re-
            initialization."
    ::= { sensorEntry 1 }

sensorReading OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "A textual string containing information about the
            interface.  This string should include the name of the
            manufacturer, the product name and the version of the
            interface hardware/software."
    ::= { sensorEntry 2 }

sensorPositiveHysteresis OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The type of interface.  Additional values for ifType are
            assigned by the Internet Assigned Numbers Authority (IANA),
            through updating the syntax of the IANAifType textual
            convention."
    ::= { sensorEntry 3 }

sensorNegativeHysteresis OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The size of the largest packet which can be sent/received
            on the interface, specified in octets.  For interfaces that
            are used for transmitting network datagrams, this is the
            size of the largest network datagram that can be sent on the
            interface."
    ::= { sensorEntry 4 }

lncThreshold OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "An estimate of the interface's current bandwidth in bits
            per second.  For interfaces which do not vary in bandwidth
            or for those where no accurate estimation can be made, this
            object should contain the nominal bandwidth.  If the
            bandwidth of the interface is greater than the maximum value
            reportable by this object then this object should report its
            maximum value (4,294,967,295) and ifHighSpeed must be used
            to report the interace's speed.  For a sub-layer which has
            no concept of bandwidth, this object should be zero."
    ::= { sensorEntry 5 }

lcThreshold OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The interface's address at its protocol sub-layer.  For
            example, for an 802.x interface, this object normally
            contains a MAC address.  The interface's media-specific MIB
            must define the bit and byte ordering and the format of the
            value of this object.  For interfaces which do not have such
            an address (e.g., a serial line), this object should contain
            an octet string of zero length."
    ::= { sensorEntry 6 }

lnrThreshold OBJECT-TYPE
    SYNTAX  Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "The desired state of the interface.  The testing(3) state
            indicates that no operational packets can be passed.  When a
            managed system initializes, all interfaces start with
            ifAdminStatus in the down(2) state.  As a result of either
            explicit management action or per configuration information
            retained by the managed system, ifAdminStatus is then
            changed to either the up(1) or testing(3) states (or remains
            in the down(2) state)."
    ::= { sensorEntry 7 }



uncThreshold OBJECT-TYPE
    SYNTAX  Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The current operational state of the interface.  The
            testing(3) state indicates that no operational packets can
            be passed.  If ifAdminStatus is down(2) then ifOperStatus
            should be down(2).  If ifAdminStatus is changed to up(1)
            then ifOperStatus should change to up(1) if the interface is
            ready to transmit and receive network traffic; it should
            change to dormant(5) if the interface is waiting for
            external actions (such as a serial line waiting for an
            incoming connection); it should remain in the down(2) state
            if and only if there is a fault that prevents it from going
            to the up(1) state; it should remain in the notPresent(6)
            state if the interface has missing (typically, hardware)
            components."
    ::= { sensorEntry 8 }

ucThreshold OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The value of sysUpTime at the time the interface entered
            its current operational state.  If the current state was
            entered prior to the last re-initialization of the local
            network management subsystem, then this object contains a
            zero value."
    ::= { sensorEntry 9 }

unrThreshold OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The total number of octets received on the interface,


            including framing characters.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { sensorEntry 10 }

eventAssertionEnable OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of packets, delivered by this sub-layer to a
            higher (sub-)layer, which were not addressed to a multicast
            or broadcast address at this sub-layer.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { sensorEntry 11 }

eventDeassertionEnable OBJECT-TYPE
    SYNTAX  Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of packets, delivered by this sub-layer to a
            higher (sub-)layer, which were addressed to a multicast or
            broadcast address at this sub-layer.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime.

            This object is deprecated in favour of ifInMulticastPkts and
            ifInBroadcastPkts."
    ::= { sensorEntry 12 }

sensorIDString OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(16))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
            "16-byte length field for displaying each available sensors' ID string."
    ::= { sensorEntry 13 }
    
chassis         OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Power status"
    ::= { ipmi 4 }

BMCMajorVesion OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "BMC Major Vesion"
    ::= { boardinfo 1 }

BMCMinorVesion OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "BMC Minor Vesion"
    ::= { boardinfo 2 }

BMCBuildDate OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(16))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "BMC FW Build Date"
    ::= { boardinfo 3 }

BIOSVesion OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(16))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "BIOS Vesion"
    ::= { boardinfo 4 }

BIOSBuildDate OBJECT-TYPE
    SYNTAX     DisplayString (SIZE(16))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "BIOS Build Date"
    ::= { boardinfo 5 }

HostName OBJECT-TYPE
    SYNTAX     DisplayString (SIZE(16))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "BMC Host Name"
    ::= { boardinfo 6 }

SerialNumber OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(16))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Motherboard Serial Number"
    ::= { hardwareinfo 1 }
END
