CYAN-FAN-MIB DEFINITIONS ::= BEGIN
IMPORTS
    MODULE-IDENTITY,
    OBJECT-TYPE,
    Integer32,
    Unsigned32
                    FROM SNMPv2-SMI

    DisplayString
                    FROM SNMPv2-TC

    CyanAdminStateTc,
    CyanOpStateQualTc,
    CyanSecServiceStateTc,
    CyanLEDTc,
    CyanOpStateTc
                    FROM CYAN-TC-MIB

    CyanTypeTc,
    cyanEntityModules
		    FROM CYAN-MIB

    MODULE-COMPLIANCE, 
    OBJECT-GROUP
	            FROM SNMPv2-CONF;


cyanFanModule MODULE-IDENTITY
    LAST-UPDATED "201412070545Z" -- Sun Dec  7 05:45:26 2014
    ORGANIZATION "Cyan, Inc."
    CONTACT-INFO
        "
        E-mail:  support@cyaninc.com

        Postal:  Cyan, Inc.
               1390 N. McDowell Blvd., # G-327
               Petaluma, CA  94954
               USA

        Tel:     +1-707-735-2300"

    DESCRIPTION    "MIB module for Fan"

    REVISION     "201412070545Z" -- Sun Dec  7 05:45:26 2014
    DESCRIPTION  "Release 6.0 build 1416362081"

    ::= { cyanEntityModules 40 } 

cyanFanMibObjects           OBJECT IDENTIFIER ::={ cyanFanModule 1 }

cyanFanTable    OBJECT-TYPE
    SYNTAX        SEQUENCE OF CyanFanEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "A list of Fan entries."
    ::= { cyanFanMibObjects 1 }

cyanFanEntry    OBJECT-TYPE
    SYNTAX        CyanFanEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "An entry of Fan."
    INDEX {
        cyanFanShelfId ,
        cyanFanFanId 
    }
    ::= { cyanFanTable 1 }

CyanFanEntry  ::=
    SEQUENCE {
        cyanFanShelfId    Unsigned32,
        cyanFanFanId    Unsigned32,
        cyanFanAdminState    CyanAdminStateTc,
        cyanFanAlarmLed    CyanLEDTc,
        cyanFanAssetTag    DisplayString,
        cyanFanAutoinserviceSoakTimeSec    Integer32,
        cyanFanBaseMacAddress    DisplayString,
        cyanFanDescription    DisplayString,
        cyanFanHotSwapLed    CyanLEDTc,
        cyanFanIdentifier    DisplayString,
        cyanFanMacBlockSize    Unsigned32,
        cyanFanMfgCleiCode    DisplayString,
        cyanFanMfgEciCode    DisplayString,
        cyanFanMfgModuleId    Unsigned32,
        cyanFanMfgPartNumber    DisplayString,
        cyanFanMfgRevision    DisplayString,
        cyanFanMfgSerialNumber    DisplayString,
        cyanFanName    DisplayString,
        cyanFanOidClass    DisplayString,
        cyanFanOperState    CyanOpStateTc,
        cyanFanOperStateQual    CyanOpStateQualTc,
        cyanFanOssLabel    DisplayString,
        cyanFanOwner    DisplayString,
        cyanFanPartNumber    DisplayString,
        cyanFanPowerLed    CyanLEDTc,
        cyanFanSecServState    CyanSecServiceStateTc,
        cyanFanType    CyanTypeTc
    }

cyanFanShelfId OBJECT-TYPE
    SYNTAX       Unsigned32 (0..255)
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "Shelf Id"

    ::= { cyanFanEntry 1 }
cyanFanFanId OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "Fan Module Id"

    ::= { cyanFanEntry 2 }

cyanFanAdminState OBJECT-TYPE
    SYNTAX       CyanAdminStateTc
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Administrative state"

    ::= { cyanFanEntry 3 }

cyanFanAlarmLed OBJECT-TYPE
    SYNTAX       CyanLEDTc
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Alarm LED status"

    ::= { cyanFanEntry 4 }

cyanFanAssetTag OBJECT-TYPE
    SYNTAX       DisplayString (SIZE(0..124))
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Asset Tag"

    ::= { cyanFanEntry 5 }

cyanFanAutoinserviceSoakTimeSec OBJECT-TYPE
    SYNTAX       Integer32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Auto-In-Service soak time"

    ::= { cyanFanEntry 6 }

cyanFanBaseMacAddress OBJECT-TYPE
    SYNTAX       DisplayString
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Base MAC address of a range of addresses"

    ::= { cyanFanEntry 7 }

cyanFanDescription OBJECT-TYPE
    SYNTAX       DisplayString (SIZE(0..255))
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Description"

    ::= { cyanFanEntry 8 }

cyanFanHotSwapLed OBJECT-TYPE
    SYNTAX       CyanLEDTc
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Hot Swap LED status"

    ::= { cyanFanEntry 9 }

cyanFanIdentifier OBJECT-TYPE
    SYNTAX       DisplayString
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "string OID"

    ::= { cyanFanEntry 10 }

cyanFanMacBlockSize OBJECT-TYPE
    SYNTAX       Unsigned32 (0..255)
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Number of MAC addresses allocated from the base MAC address"

    ::= { cyanFanEntry 11 }

cyanFanMfgCleiCode OBJECT-TYPE
    SYNTAX       DisplayString (SIZE(0..10))
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Common Language Equipment Identifier"

    ::= { cyanFanEntry 12 }

cyanFanMfgEciCode OBJECT-TYPE
    SYNTAX       DisplayString (SIZE(0..6))
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Equipment Catalog Item"

    ::= { cyanFanEntry 13 }

cyanFanMfgModuleId OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Module ID"

    ::= { cyanFanEntry 14 }

cyanFanMfgPartNumber OBJECT-TYPE
    SYNTAX       DisplayString (SIZE(0..16))
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Manufacturing part number"

    ::= { cyanFanEntry 15 }

cyanFanMfgRevision OBJECT-TYPE
    SYNTAX       DisplayString (SIZE(0..4))
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Mfg revision number"

    ::= { cyanFanEntry 16 }

cyanFanMfgSerialNumber OBJECT-TYPE
    SYNTAX       DisplayString (SIZE(0..16))
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Mfg serial number"

    ::= { cyanFanEntry 17 }

cyanFanName OBJECT-TYPE
    SYNTAX       DisplayString
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Cyan name"

    ::= { cyanFanEntry 18 }

cyanFanOidClass OBJECT-TYPE
    SYNTAX       DisplayString
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "OID Class"

    ::= { cyanFanEntry 19 }

cyanFanOperState OBJECT-TYPE
    SYNTAX       CyanOpStateTc
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Primary Operation State"

    ::= { cyanFanEntry 20 }

cyanFanOperStateQual OBJECT-TYPE
    SYNTAX       CyanOpStateQualTc
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Operation state qualifier"

    ::= { cyanFanEntry 21 }

cyanFanOssLabel OBJECT-TYPE
    SYNTAX       DisplayString (SIZE(0..80))
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "CyMS label"

    ::= { cyanFanEntry 22 }

cyanFanOwner OBJECT-TYPE
    SYNTAX       DisplayString (SIZE(0..80))
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Owner"

    ::= { cyanFanEntry 23 }

cyanFanPartNumber OBJECT-TYPE
    SYNTAX       DisplayString (SIZE(0..11))
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Cyan part number"

    ::= { cyanFanEntry 24 }

cyanFanPowerLed OBJECT-TYPE
    SYNTAX       CyanLEDTc
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Power LED status"

    ::= { cyanFanEntry 25 }

cyanFanSecServState OBJECT-TYPE
    SYNTAX       CyanSecServiceStateTc
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Secondary service state"

    ::= { cyanFanEntry 26 }

cyanFanType OBJECT-TYPE
    SYNTAX       CyanTypeTc
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Equipment type"

    ::= { cyanFanEntry 27 }

cyanFanObjectGroup OBJECT-GROUP
    OBJECTS {
        cyanFanAdminState,
        cyanFanAlarmLed,
        cyanFanAssetTag,
        cyanFanAutoinserviceSoakTimeSec,
        cyanFanBaseMacAddress,
        cyanFanDescription,
        cyanFanHotSwapLed,
        cyanFanIdentifier,
        cyanFanMacBlockSize,
        cyanFanMfgCleiCode,
        cyanFanMfgEciCode,
        cyanFanMfgModuleId,
        cyanFanMfgPartNumber,
        cyanFanMfgRevision,
        cyanFanMfgSerialNumber,
        cyanFanName,
        cyanFanOidClass,
        cyanFanOperState,
        cyanFanOperStateQual,
        cyanFanOssLabel,
        cyanFanOwner,
        cyanFanPartNumber,
        cyanFanPowerLed,
        cyanFanSecServState,
        cyanFanType
    }

    STATUS current
    DESCRIPTION        "Group of objects that comes with Fan module"
    ::= {cyanFanModule 20}

cyanFanCompliance MODULE-COMPLIANCE
    STATUS current
    DESCRIPTION
        "The basic info needed to be a cyan Fan"
    MODULE
    MANDATORY-GROUPS {
        cyanFanObjectGroup
    }
    ::= { cyanFanModule 30 }


END

