-- ***************************************************************
-- INFINERA-ENTITY-PASSIVE-MIB
--
-- Aug 1, Kavitha Manjunatha
--
--
-- Copyright (c) 2010-2012 by Infinera Inc.
-- All rights reserved.
-- ****************************************************************

INFINERA-ENTITY-PASSIVE-MIB DEFINITIONS ::= BEGIN

IMPORTS
    OBJECT-TYPE, MODULE-IDENTITY        FROM SNMPv2-SMI
    OBJECT-GROUP, MODULE-COMPLIANCE     FROM SNMPv2-CONF
    RowStatus, DisplayString            FROM SNMPv2-TC
    entLPPhysicalIndex                  FROM ENTITY-MIB
    commonEquipment                       FROM INFINERA-REG-MIB
    InfnEqptType                        FROM INFINERA-TC-MIB;

passiveMIB MODULE-IDENTITY
    LAST-UPDATED  "201708010000Z"
    ORGANIZATION
        "INFINERA"
    CONTACT-INFO
        "Infinera
        169 Java Drive
        Sunnyvale, CA - 94089

        Contact : Technical Support
        Email   : support@infinera.com
        Phone   : 1-877-INF-5288"
    DESCRIPTION
        "This MIB is modeling for PASSIVE equipment table."
    REVISION  "201701080000Z"
    DESCRIPTION
        "First Version"

::= { commonEquipment 2 }

passiveConformance       OBJECT IDENTIFIER ::= { passiveMIB 3 }
passiveCompliances       OBJECT IDENTIFIER ::= { passiveConformance 1 }
passiveGroups            OBJECT IDENTIFIER ::= { passiveConformance 2 }

passiveTable  OBJECT-TYPE
    SYNTAX SEQUENCE OF PassiveEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "This table contains all SCM modules that are currently present in a network element.
        "
    ::= { passiveMIB 1 }

passiveEntry  OBJECT-TYPE
    SYNTAX     PassiveEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "A row in the SCM table. Each row in the table is identified with a unique entPhysicalIndexID.
        "
    INDEX { entLPPhysicalIndex }
    ::= { passiveTable 1 }


PassiveEntry ::= SEQUENCE {
    passiveMoId                    DisplayString,
    passiveProvEqptType            InfnEqptType,
    passiveLabel                   DisplayString,
    passiveProvSerialNumber        DisplayString,
    passiveNumSystemPorts          Integer32,
    passiveNumLinePorts            Integer32
    -- passiveSupportingMPOAIDList    DisplayString
}

passiveMoId  OBJECT-TYPE
    SYNTAX     DisplayString
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
        "This is the primary Key of the objects e.g 1-A-1"
    ::= { passiveEntry 1 }

passiveProvEqptType  OBJECT-TYPE
    SYNTAX     InfnEqptType
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
        "User provisioned SCM type."
    ::= { passiveEntry 2 }

passiveLabel OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "User provisioned label"
    ::= { passiveEntry 3 }

passiveProvSerialNumber OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Passive equipment serial number"
    ::= { passiveEntry 4 }

passiveNumSystemPorts  OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Number of System ports"
    ::= { passiveEntry 5 }

passiveNumLinePorts  OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Number of line ports"
    ::= { passiveEntry 6 }

-- passiveSupportingMPOAIDList OBJECT-TYPE
    -- SYNTAX      DisplayString
    -- MAX-ACCESS  read-only
    -- STATUS      current
    -- DESCRIPTION ""
    -- ::= { passiveEntry 7 }

passiveCompliance  MODULE-COMPLIANCE
    STATUS     current
    DESCRIPTION
        "Describes the requirements for conformance to the PASSIVE-MIB"
    MODULE
        MANDATORY-GROUPS { passiveGroup }
    ::= { passiveCompliances 1 }

passiveGroup  OBJECT-GROUP
    OBJECTS {
        passiveMoId,
        passiveProvEqptType,
        passiveLabel,
        passiveProvSerialNumber,
        passiveNumSystemPorts,
        passiveNumLinePorts
        -- passiveSupportingMPOAIDList
    }
    STATUS     current
    DESCRIPTION
        " A collection of objects for managing a PASSIVE module"
    ::= { passiveGroups 1 }
END
