LUM-IP-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, Unsigned32, IpAddress, Integer32
        FROM SNMPv2-SMI
    OBJECT-GROUP, MODULE-COMPLIANCE
        FROM SNMPv2-CONF
    RowStatus, DateAndTime
        FROM SNMPv2-TC
    lumModules, lumIpMIB
        FROM LUM-REG
    MgmtNameString, CommandString
        FROM LUM-TC;

lumIpMIBModule MODULE-IDENTITY
    LAST-UPDATED
        "201812200000Z" -- Dec 20th 2018
    ORGANIZATION
        "Infinera Corporation"
    CONTACT-INFO
        "techsupport@infinera.com"
    DESCRIPTION
        "The IP and OSPF MIB.

        - General

        - IP addresses

        - IP routes

        - OSPF interfaces

"
    REVISION
        "201812200000Z" -- Dec 20th 2018
    DESCRIPTION
        "Changes made for release r32.0:
         - Added ipIfDstAddr in table ipIfGroup"
    REVISION
        "201805310000Z" -- May 31th 2018
    DESCRIPTION
        "Changes made for release r30.1.1:
         - Added netconfMode in table general"
    REVISION
        "201706150000Z" -- June 15th 2017
    DESCRIPTION
        "Changes made for release r29.0:
         - Changed ORGANIZATION and CONTACT-INFO"
    REVISION
        "201606140000Z" -- Jun 14th 2016
    DESCRIPTION
        "Changes made for release r27a
         - Added sftp_mode
         - Added tftp_mode enable/disable configuration"
    REVISION
        "201601110000Z" -- Jan 11th 2016
    DESCRIPTION
        "Added default operStatus to down."
    REVISION
        "201308140000Z" -- August 14th 2013
    DESCRIPTION
        "Improved help text for metric."
    REVISION
        "200901230000Z" -- January 23th 2009
    DESCRIPTION
        "Added OSPF Passive interface attribute."
    REVISION
        "200412060000Z" -- December 6th 2004
    DESCRIPTION
        "Added IP address command."
    REVISION
        "200412030000Z" -- December 3rd 2004
    DESCRIPTION
        "Added symbolic name attributes for routes and OSPF neighbours."
    REVISION
        "200410010000Z" -- October 1st 2004
    DESCRIPTION
        "Added table size variables."
    REVISION
        "200305150000Z" -- May 15th 2003
    DESCRIPTION
        "Added ftp and telnet mode."
    REVISION
        "200209130000Z" -- September 13th 2002
    DESCRIPTION
        "Added OSPF general parameters, interface and neighbor list."
    REVISION
        "200203120000Z" -- March 12th 2002
    DESCRIPTION
        "Added IP address and mask for the mgmt interface. Interface table is now
        read-only."
    REVISION
        "200111210000Z" -- November 21st 2001
    DESCRIPTION
        "Added metric to the ospf interface."
    REVISION
        "200111200000Z" -- November 20th 2001
    DESCRIPTION
        "Removed metrics, moved in-band interfaces to the WDM-mib.
        Minor fixes."
    REVISION
        "200111160000Z" -- November 16th 2001
    DESCRIPTION
        "The initial revision of this module."
    ::= { lumModules 15 }


-- ----------------------------------------------------
-- Conformance area, containing groups and complicance
-- specifications.
-- ----------------------------------------------------

lumIpConfs OBJECT IDENTIFIER ::= { lumIpMIB 1 }
lumIpGroups OBJECT IDENTIFIER ::= { lumIpConfs 1 }
lumIpCompl OBJECT IDENTIFIER ::= { lumIpConfs 2 }


-- ----------------------------------------------------
-- Root for objects in the ip MIB
-- ----------------------------------------------------

lumIpMIBObjects OBJECT IDENTIFIER ::= { lumIpMIB 2 }


-- ----------------------------------------------------
-- This MIB contains the following groups:
-- ----------------------------------------------------

ipGeneral OBJECT IDENTIFIER ::= { lumIpMIBObjects 1 }
ipIfList OBJECT IDENTIFIER ::= { lumIpMIBObjects 2 }
ipRouteList OBJECT IDENTIFIER ::= { lumIpMIBObjects 3 }
ospfGeneral OBJECT IDENTIFIER ::= { lumIpMIBObjects 4 }
ospfIfList OBJECT IDENTIFIER ::= { lumIpMIBObjects 5 }
ospfNbrList OBJECT IDENTIFIER ::= { lumIpMIBObjects 6 }


-- ----------------------------------------------------
-- Textual Conventions
-- ----------------------------------------------------

-- N/A


-- ----------------------------------------------------
-- General group
-- ----------------------------------------------------

ipGeneralLastChangeTime OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The time when the state of the MIB was last
        changed.
"
    ::= { ipGeneral 1 }

ipGeneralNextMgmtAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "The IP address associated with the management
       interface.

       If set to 0.0.0.0 the IP address from the boot
       parameter area is used.

       Updating this variable requires a restart of
       the system.
"
    ::= { ipGeneral 2 }

ipGeneralStoredMgmtAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The IP address associated with the management
        interface.

        Note that this address may be different from the
        one stored in the boot parameter area.
"
    ::= { ipGeneral 3 }

ipGeneralNextMgmtNetMask OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The subnet mask associated with the IP address
        of the management interface.

        The value of the mask is an IP address with all
        the network bits set to 1 and all the hosts bits
        set to 0.

        If set to 0.0.0.0 the net mask from the boot
        parameter area is used.

        Updating this variable requires a restart of the
        system.
"
    ::= { ipGeneral 4 }

ipGeneralStoredMgmtNetMask OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The subnet mask associated with the management
        interface.

        Note that this mask may be different from the one
        stored in the boot parameter area.

        The value of the mask is an IP address with all
        the network bits set to 1 and all the hosts bits
        set to 0.
"
    ::= { ipGeneral 5 }

ipGeneralConfigLastChangeTime OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The time when the configuration of the MIB was
        last changed.
"
    ::= { ipGeneral 6 }

ipGeneralTelnetMode OBJECT-TYPE
    SYNTAX      INTEGER {
                    enabled (1),
                    disabled (2) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Enables/disables the telnet service in the
        node.

        enabled - Telnet is enabled.

        disabled - Telnet is disabled.
"
    DEFVAL { enabled }
    ::= { ipGeneral 7 }

ipGeneralFtpMode OBJECT-TYPE
    SYNTAX      INTEGER {
                    enabled (1),
                    disabled (2) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Enables/disables access the file transfer
        (FTP) service in the network element.

        enabled - FTP is enabled.

        disabled - FTP is disabled.
"
    DEFVAL { enabled }
    ::= { ipGeneral 8 }

ipGeneralIfTableSize OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of rows available in the
        interface table.
"
    ::= { ipGeneral 9 }

ipGeneralRouteTableSize OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of rows available in the
        route table.
"
    ::= { ipGeneral 10 }

ipGeneralOspfIfTableSize OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of rows available in the
        OSPF interface table.
"
    ::= { ipGeneral 11 }

ipGeneralOspfNbrTableSize OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of rows available in the
        OSPF neighbour table.
"
    ::= { ipGeneral 12 }

ipGeneralChangeNextMgmtAddr OBJECT-TYPE
    SYNTAX      CommandString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Change IP address and mask.

        If the address is set to 0.0.0.0 the
        IP address and net mask from the boot
        parameter area is used.

        Updating this variable requires a restart of
        the system.
"
    ::= { ipGeneral 13 }

ipGeneralSftpMode OBJECT-TYPE
    SYNTAX      INTEGER {
                    enabled (1),
                    disabled (2) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "If this is enabled, then sftp is available
        on the node.

        enabled - SFTP is working.

        disabled - SFTP will not work on this node.
"
    DEFVAL { enabled }
    ::= { ipGeneral 14 }

ipGeneralTftpMode OBJECT-TYPE
    SYNTAX      INTEGER {
                    enabled (1),
                    disabled (2) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Enable or Disable the TFTP service on the CU for transferring files using DCN or the local craft ETH port (CU-SFP/III).
         enabled -  TFTP server on CU (Control Unit) is allowed to recieve data from DCN and Locat Craft ETH.

         disabled - TFTP server on CU (Control Unit) is not allowed to recieve data to/from DCN and Local Craft ETH.
                    This is default from release 27.
                    Note: Local Craft ETH is available on CU-SFP/III.
"
    DEFVAL { disabled }
    ::= { ipGeneral 15 }

ipGeneralNetconfMode OBJECT-TYPE
    SYNTAX      INTEGER {
                    enabled (1),
                    disabled (2) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Enable or Disable the NETCONF (Network Configuration Protocol) service for the network element.
         enabled -  NETCONF is enabled.

         disabled - NETCONF is disabled.
"
    DEFVAL { disabled }
    ::= { ipGeneral 16 }

-- ----------------------------------------------------
-- IP interface table
-- ----------------------------------------------------

ipIfTable  OBJECT-TYPE
    SYNTAX      SEQUENCE OF IpIfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The IP interface table."
    ::= { ipIfList 1 }

ipIfEntry OBJECT-TYPE
    SYNTAX      IpIfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry in the IP interface table.
"
    INDEX { ipIfIndex }
    ::= { ipIfTable 1 }

IpIfEntry ::=
    SEQUENCE {
        ipIfIndex               Unsigned32,
        ipIfName                MgmtNameString,
        ipIfAddr                IpAddress,
        ipIfNetMask             IpAddress,
        ipIfOperStatus          INTEGER,
        ipIfDstAddr             IpAddress }

ipIfIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..2147483647)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "An arbitrary index assigned to each entry.
"
    ::= { ipIfEntry 1 }

ipIfName OBJECT-TYPE
    SYNTAX      MgmtNameString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The name of the object, for example 'eth1' or
        'ppp-1-7'. For the latter the numbers indicate
        the subrack and slot number.
"
    ::= { ipIfEntry 2 }

ipIfAddr OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The destination IP address of this route.
        Set to 0.0.0.0 if no address is assigned.
"
    ::= { ipIfEntry 3 }

ipIfNetMask OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The subnet mask associated with the IP address
        of this entry. The value of the mask is an IP
        address with all the network bits set to 1 and
        all the hosts bits set to 0.
"
    ::= { ipIfEntry 4 }

ipIfOperStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    down (1),
                    up (2) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The operational state for the interface.

        down - The interfaces is disabled.

        up - The interface is ready to pass packages.
"
    DEFVAL { down }
    ::= { ipIfEntry 5 }

ipIfDstAddr OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The destination IP address of this interface.
        Set to 0.0.0.0 if no address is assigned.
"
    ::= { ipIfEntry 6 }

-- ----------------------------------------------------
-- IP routing table
-- ----------------------------------------------------

ipRouteTable OBJECT-TYPE
    SYNTAX   SEQUENCE OF IpRouteEntry
    MAX-ACCESS not-accessible
    STATUS   current
    DESCRIPTION
       "Statically configured IP routes."
    ::= { ipRouteList 1 }

ipRouteEntry OBJECT-TYPE
    SYNTAX   IpRouteEntry
    MAX-ACCESS not-accessible
    STATUS   current
    DESCRIPTION
       "An entry in the routing table.

"
    INDEX { ipRouteIndex }
    ::= { ipRouteTable 1 }

IpRouteEntry ::=
    SEQUENCE {
        ipRouteIndex            Unsigned32,
        ipRouteDest             IpAddress,
        ipRouteMask             IpAddress,
        ipRouteNextHop          IpAddress,
        ipRouteIfName           MgmtNameString,
        ipRouteRowStatus        RowStatus,
        ipRouteProto            INTEGER,
        ipRouteMetric           Unsigned32,
        ipRouteOperStatus       INTEGER,
        ipRouteName             MgmtNameString }

ipRouteIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..2147483647)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "An arbitrary index assigned to each entry.
"
    ::= { ipRouteEntry 1 }

ipRouteDest OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
       "The destination IP address of this route.

       This object may not take a Multicast (Class D)
       address value.

       Any assignment (implicit or otherwise) of an
       instance  of this object to a value x must be
       rejected if the bitwise logical-AND of x with
       the value of the corresponding instance of the
       ipRouteMask object is not equal to x.
"
    ::= { ipRouteEntry 2 }

ipRouteMask OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Indicate the mask to be logical-ANDed with the
        destination address before being compared to the
        value in the ipRouteDest field. For those systems
        that do not support arbitrary subnet masks, an
        agent constructs the value of the ipRouteMask
        by reference to the IP Address Class.

        Any assignment (implicit or  otherwise) of an
        instance of this object to a value x must be
        rejected if the bitwise logical-AND of x with
        the value of the corresponding instance of the
        ipRouteDest object is not equal to ipRouteDest.
"
    ::= { ipRouteEntry 3 }

ipRouteNextHop OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "On remote routes, the address of the next system
        en route; Otherwise, 0.0.0.0.

        nextHop is restricted to the same sub-net as the
        node belongs.
"
    ::= { ipRouteEntry 4 }

ipRouteIfName OBJECT-TYPE
    SYNTAX      MgmtNameString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The name of the local interface through which the
        next hop of this route should be reached.
        The following interface names are permitted:

        pn-n-n-n-n - In-band management wrapper channel or
        optical supervision interfaces.

        Where n is a number.

        Set to the empty string if not used.
"
    ::= { ipRouteEntry 5 }

ipRouteRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Manages creation and deletion of conceptual rows.
        See also SNMPv2-TC.
"
    ::= { ipRouteEntry 6 }

ipRouteProto OBJECT-TYPE
    SYNTAX   INTEGER {
                system (1),
                kernel (2),
                connect (3),
                static (4),
                rip (5),
                ripng (6),
                ospf (7),
                ospf6 (8),
                bgp (9) }
    MAX-ACCESS read-only
    STATUS   current
    DESCRIPTION
        "The routing mechanism via which this route was
        learned. Inclusion of values for gateway routing
        protocols is not intended to imply that hosts
        should support those protocols.
"
    ::= { ipRouteEntry 7 }

ipRouteMetric OBJECT-TYPE
    SYNTAX Unsigned32 (0..4294967295)
    MAX-ACCESS read-write
    STATUS   current
    DESCRIPTION
        "The routing metric for this route.
        The semantics of this metric are determined by
        the routing-protocol specified in the routes
        ipRouteProto value.

        Note, this value is not possible to change when
        protocol is set to 'connect'.

"
    DEFVAL { 0 }
    ::= { ipRouteEntry 8 }

ipRouteOperStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    down (1),
                    up (2) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The administrative state for the interface.

        down - The route is in-active.

        up - The route is active.
"
    ::= { ipRouteEntry 9 }

ipRouteName OBJECT-TYPE
    SYNTAX      MgmtNameString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Symbolic name of the route entry.
"
    ::= { ipRouteEntry 10 }


-- ----------------------------------------------------
-- OSPF general group
-- ----------------------------------------------------

ospfGeneralRouterId OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The IP address used as a router id for the OSPF
        routing protocol.
"
    ::= { ospfGeneral 1 }

ospfGeneralDistrMode OBJECT-TYPE
    SYNTAX      INTEGER {
                    enabled (1),
                    disabled (2) }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Enables/disables distribution of static routes
        throughout the OSPF routing domain (i.e. the so
        called AS).

        Note: The values for metric type and cost revert
        back to default values when distribution is
        disabled.

        enabled - Routes are distributed.

        disabled - Static routes are not distributed.
"
    DEFVAL { disabled }
    ::= { ospfGeneral 2 }

ospfGeneralDistrMetricType OBJECT-TYPE
    SYNTAX      INTEGER {
                    comparableCost (1),
                    nonComparable  (2) }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The (common) metric type for all advertised
        static routes. See also RFC 2328 'OSPF Version 2'.

        Note: The values for metric type and cost revert
        back to default values when distribution is disabled.

        comparableCost - External type 1

        nonComparable - External type 2
"
    DEFVAL { nonComparable }
    ::= { ospfGeneral 3 }

ospfGeneralDistrMetric OBJECT-TYPE
   SYNTAX       Unsigned32 (0..16777214)
   MAX-ACCESS   read-write
   STATUS       current
   DESCRIPTION
       "The (common) cost for all advertised static
       routes.

        Note: The values for metric type and cost revert
        back to default values when distribution is
        disabled.
"
   DEFVAL { 20 }
   ::= { ospfGeneral 4 }


-- ----------------------------------------------------
-- OSPF interface group
-- ----------------------------------------------------

ospfIfTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OspfIfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OSPF Interface Table describes the interfaces
       from the viewpoint of OSPF."
  ::= { ospfIfList 1 }


ospfIfEntry OBJECT-TYPE
    SYNTAX      OspfIfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The OSPF Interface Entry describes one interface
        from the viewpoint of OSPF.
"
   INDEX { ospfIfIndex }
   ::= { ospfIfTable 1 }

OspfIfEntry ::=
    SEQUENCE {
        ospfIfIndex             Unsigned32,
        ospfIfName              MgmtNameString,
        ospfIfAreaId            IpAddress,
        ospfIfMetric            Unsigned32,
        ospfIfRtrPriority       Integer32,
        ospfIfDesignatedRouterId IpAddress,
        ospfIfBackupDesignatedRouterId IpAddress,
        ospfIfAdminStatus       INTEGER,
        ospfIfOperStatus        INTEGER,
        ospfIfRowStatus         RowStatus,
	ospfIfPassive		INTEGER }

ospfIfIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..2147483647)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "An arbitrary index assigned to each entry.
"
    ::= { ospfIfEntry 1 }

ospfIfName OBJECT-TYPE
    SYNTAX   MgmtNameString
    MAX-ACCESS   read-create
    STATUS   current
    DESCRIPTION
        "The name of the interface.
        OSPF configuration is not permitted on the
        following interfaces:

        The following interface names are permitted:

        eth1 - The management interface.

        pn-n-n-n-n - In-band management wrapper channel or
        optical supervision channels interfaces.

        Where n is a number.
"
   ::= { ospfIfEntry 3 }

ospfIfAreaId OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "A 32-bit integer uniquely identifying the area
        to which the interface connects.
        Area ID 0.0.0.0 is used for the OSPF backbone.
"
   ::= { ospfIfEntry 4 }

-- The following does not come out well in the generate help text;
-- should include a fix in the help text generator...
--    DEFVAL { '00000000'h }

ospfIfMetric OBJECT-TYPE
   SYNTAX       Unsigned32 (1..65535)
   MAX-ACCESS   read-write
   STATUS       current
   DESCRIPTION
       "The OSPF internal cost.
"
   DEFVAL { 10 }
   ::= { ospfIfEntry 5 }

ospfIfRtrPriority OBJECT-TYPE
   SYNTAX      Integer32 (0..'FF'h)
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION
       "The priority of this interface.
       Used in multi-access networks, this field is used
       in the designated router election algorithm.
       The value 0 signifies that the router is not
       eligible to become the designated router on this
       particular network. When two routers attached to a
       network both attempt to become Designated Router,
       the one with the highest Router Priority value takes
       precedence. In the event of a tie in this value,
       routers will use their Router ID as a tie breaker.
"
   DEFVAL { 0 }
   ::= { ospfIfEntry 6 }

ospfIfDesignatedRouterId OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The router id of the designated router for the
        network to which the interface connects.
        0.0.0.0 means that there is no designated router.
"
   ::= { ospfIfEntry 7 }

ospfIfBackupDesignatedRouterId OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The router id of the backup designated router for
        the network to which the interface connects.
        0.0.0.0 means that there is no backup designated
        router.
"
   ::= { ospfIfEntry 8 }

ospfIfAdminStatus OBJECT-TYPE
    SYNTAX   INTEGER {
                up (1),
                down (2) }
    MAX-ACCESS   read-write
    STATUS   current
    DESCRIPTION
        "The OSPF administrative status of the interface.
        The  value formed on the interface, and the
        interface will be advertised as an internal route
        to some area. The  value 'down' denotes that the
        interface is external to OSPF.
"
   DEFVAL { down }
   ::= { ospfIfEntry 9 }

ospfIfOperStatus OBJECT-TYPE
    SYNTAX   INTEGER {
                undefined (0),
                down (1),
                loopback (2),
                waiting (3),
                ptp (4),
                dr (5),
                bdr (6),
                odr (7) }
    MAX-ACCESS   read-only
    STATUS   current
    DESCRIPTION
        "The OSPF operative status of the interface.
        See also RFC 2328 'OSPF Version 2'.

        down

        loopback

        waiting

        ptp - point to point

        dr - designated router

        bdr - backup designated router

        odr - other designated router
"
   ::= { ospfIfEntry 10 }

ospfIfRowStatus OBJECT-TYPE
    SYNTAX   RowStatus
    MAX-ACCESS   read-create
    STATUS   current
    DESCRIPTION
        "This variable displays the status of the entry.
        Setting it to 'invalid' has the effect of
        rendering it inoperative. The internal effect
        (row removal) is implementation dependent.
"
   ::= { ospfIfEntry 11 }

ospfIfPassive OBJECT-TYPE
    SYNTAX   INTEGER {
                enabled (1),
                disabled (2) }
    MAX-ACCESS   read-write
    STATUS   current
    DESCRIPTION
        "OSPF Passive mode.
	If OSPF Passive mode is set to enable, OSPF will not
	advertice itself on this interface. This interface
	will however be adverticed on other interfaces.
"
   DEFVAL { disabled }
   ::= { ospfIfEntry 12 }

-- ----------------------------------------------------
-- OSPF neighbor group
-- ----------------------------------------------------

ospfNbrTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF OspfNbrEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "OSPF Neighbors."
  ::= { ospfNbrList 1 }


ospfNbrEntry OBJECT-TYPE
    SYNTAX      OspfNbrEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "The OSPF Neighbor Table describes all neighbors in
       the locality of the subject router.
"
   INDEX { ospfNbrIndex }
   ::= { ospfNbrTable 1 }

OspfNbrEntry ::=
    SEQUENCE {
        ospfNbrIndex            Unsigned32,
        ospfNbrIpAddr           IpAddress,
        ospfNbrRtrId            IpAddress,
        ospfNbrIfName           MgmtNameString,
        ospfNbrOperStatus       INTEGER,
        ospfNbrName             MgmtNameString }

ospfNbrIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..2147483647)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "An arbitrary index assigned to each entry.
"
    ::= { ospfNbrEntry 1 }

ospfNbrIpAddr OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The IP address this neighbor is using in its
        IP Source Address.

        Note that, on addressless links, this will not be
        0.0.0.0,  but  the  address of another of the
        neighbors interfaces.
"
    ::= { ospfNbrEntry 2 }


ospfNbrRtrId OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "An IP address uniquely identifying the
        neighboring router in the Autonomous System.
"
   ::= { ospfNbrEntry 3 }

ospfNbrIfName OBJECT-TYPE
    SYNTAX   MgmtNameString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The name of the local interface the neighboring
        router has been discovered on.
"
    ::= { ospfNbrEntry 4 }

ospfNbrOperStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    down (1),
                    attempt (2),
                    init (3),
                    twoWay (4),
                    exchangeStart (5),
                    exchange (6),
                    loading (7),
                    full (8) }
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The state of the relationship with this neighbor.
        See also RFC 2328 'OSPF Version 2'.
"
  ::= { ospfNbrEntry 5 }

ospfNbrName OBJECT-TYPE
    SYNTAX   MgmtNameString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "A symbolic name of the neighbor.
"
    ::= { ospfNbrEntry 6 }


-- ----------------------------------------------------
-- Notifications
-- ----------------------------------------------------

-- n/a


-- ----------------------------------------------------
-- Object and event groups
-- ----------------------------------------------------

ipGeneralGroup OBJECT-GROUP
    OBJECTS {
        ipGeneralLastChangeTime,
        ipGeneralNextMgmtAddress,
        ipGeneralStoredMgmtAddress,
        ipGeneralNextMgmtNetMask,
        ipGeneralStoredMgmtNetMask }
    STATUS      current
    DESCRIPTION
        "The general objects."
    ::= { lumIpGroups 1 }

ipIfGroup OBJECT-GROUP
    OBJECTS {
        ipIfIndex,
        ipIfName,
        ipIfAddr,
        ipIfNetMask,
        ipIfOperStatus }
    STATUS      deprecated
    DESCRIPTION
        "The IP interface objects."
    ::= { lumIpGroups 2 }

ipRouteGroup OBJECT-GROUP
    OBJECTS {
        ipRouteIndex,
        ipRouteDest,
        ipRouteMask,
        ipRouteNextHop,
        ipRouteIfName,
        ipRouteRowStatus,
        ipRouteProto,
        ipRouteMetric,
        ipRouteOperStatus }
    STATUS      deprecated
    DESCRIPTION
        "The IP route objects."
    ::= { lumIpGroups 3 }

ospfGeneralGroup OBJECT-GROUP
    OBJECTS {
        ospfGeneralRouterId,
        ospfGeneralDistrMode,
        ospfGeneralDistrMetricType,
        ospfGeneralDistrMetric }
    STATUS      current
    DESCRIPTION
        "The OSPF general objects."
    ::= { lumIpGroups 4 }

ospfIfGroup OBJECT-GROUP
    OBJECTS {
        ospfIfIndex,
        ospfIfName,
        ospfIfAreaId,
        ospfIfMetric,
        ospfIfRtrPriority,
        ospfIfDesignatedRouterId,
        ospfIfBackupDesignatedRouterId,
        ospfIfAdminStatus,
        ospfIfOperStatus,
        ospfIfRowStatus }
    STATUS      deprecated
    DESCRIPTION
        "The OSPF interface objects."
    ::= { lumIpGroups 5 }

ospfNbrGroup OBJECT-GROUP
    OBJECTS {
        ospfNbrIndex,
        ospfNbrIpAddr,
        ospfNbrRtrId,
        ospfNbrIfName,
        ospfNbrOperStatus }
    STATUS      deprecated
    DESCRIPTION
        "The OSPF neighbor objects."
    ::= { lumIpGroups 6 }

ipGeneralGroupV2 OBJECT-GROUP
    OBJECTS {
        ipGeneralLastChangeTime,
        ipGeneralNextMgmtAddress,
        ipGeneralStoredMgmtAddress,
        ipGeneralNextMgmtNetMask,
        ipGeneralStoredMgmtNetMask,
        ipGeneralConfigLastChangeTime }
    STATUS      deprecated
    DESCRIPTION
        "The general objects v2."
    ::= { lumIpGroups 7 }

ipGeneralGroupV3 OBJECT-GROUP
    OBJECTS {
        ipGeneralLastChangeTime,
        ipGeneralNextMgmtAddress,
        ipGeneralStoredMgmtAddress,
        ipGeneralNextMgmtNetMask,
        ipGeneralStoredMgmtNetMask,
        ipGeneralConfigLastChangeTime,
        ipGeneralTelnetMode,
        ipGeneralFtpMode }
    STATUS      current
    DESCRIPTION
        "The general objects v3."
    ::= { lumIpGroups 8 }

ipGeneralGroupV4 OBJECT-GROUP
    OBJECTS {
        ipGeneralLastChangeTime,
        ipGeneralNextMgmtAddress,
        ipGeneralStoredMgmtAddress,
        ipGeneralNextMgmtNetMask,
        ipGeneralStoredMgmtNetMask,
        ipGeneralConfigLastChangeTime,
        ipGeneralTelnetMode,
        ipGeneralFtpMode,
        ipGeneralIfTableSize,
        ipGeneralRouteTableSize,
        ipGeneralOspfIfTableSize,
        ipGeneralOspfNbrTableSize }
    STATUS      deprecated
    DESCRIPTION
        "The general objects v4."
    ::= { lumIpGroups 9 }

ipRouteGroupV2 OBJECT-GROUP
    OBJECTS {
        ipRouteIndex,
        ipRouteDest,
        ipRouteMask,
        ipRouteNextHop,
        ipRouteIfName,
        ipRouteRowStatus,
        ipRouteProto,
        ipRouteMetric,
        ipRouteOperStatus,
        ipRouteName }
    STATUS      current
    DESCRIPTION
        "The IP route objects v2."
    ::= { lumIpGroups 10 }

ospfNbrGroupV2 OBJECT-GROUP
    OBJECTS {
        ospfNbrIndex,
        ospfNbrIpAddr,
        ospfNbrRtrId,
        ospfNbrIfName,
        ospfNbrOperStatus,
        ospfNbrName }
    STATUS      current
    DESCRIPTION
        "The OSPF neighbor objects v2."
    ::= { lumIpGroups 11 }

ipGeneralGroupV5 OBJECT-GROUP
    OBJECTS {
        ipGeneralLastChangeTime,
        ipGeneralNextMgmtAddress,
        ipGeneralStoredMgmtAddress,
        ipGeneralNextMgmtNetMask,
        ipGeneralStoredMgmtNetMask,
        ipGeneralConfigLastChangeTime,
        ipGeneralTelnetMode,
        ipGeneralFtpMode,
        ipGeneralIfTableSize,
        ipGeneralRouteTableSize,
        ipGeneralOspfIfTableSize,
        ipGeneralOspfNbrTableSize,
        ipGeneralChangeNextMgmtAddr }
    STATUS      deprecated
    DESCRIPTION
        "The general objects v5."
    ::= { lumIpGroups 12 }

ospfIfGroupV2 OBJECT-GROUP
    OBJECTS {
        ospfIfIndex,
        ospfIfName,
        ospfIfAreaId,
        ospfIfMetric,
        ospfIfRtrPriority,
        ospfIfDesignatedRouterId,
        ospfIfBackupDesignatedRouterId,
        ospfIfAdminStatus,
        ospfIfOperStatus,
        ospfIfRowStatus,
	ospfIfPassive }
    STATUS      current
    DESCRIPTION
        "The OSPF interface objects."
    ::= { lumIpGroups 13 }

ipGeneralGroupV6 OBJECT-GROUP
    OBJECTS {
        ipGeneralLastChangeTime,
        ipGeneralNextMgmtAddress,
        ipGeneralStoredMgmtAddress,
        ipGeneralNextMgmtNetMask,
        ipGeneralStoredMgmtNetMask,
        ipGeneralConfigLastChangeTime,
        ipGeneralTelnetMode,
        ipGeneralFtpMode,
        ipGeneralIfTableSize,
        ipGeneralRouteTableSize,
        ipGeneralOspfIfTableSize,
        ipGeneralOspfNbrTableSize,
        ipGeneralChangeNextMgmtAddr,
        ipGeneralSftpMode,
        ipGeneralTftpMode}
    STATUS      deprecated
    DESCRIPTION
        "The general objects v6."
    ::= { lumIpGroups 14 }

ipGeneralGroupV7 OBJECT-GROUP
    OBJECTS {
        ipGeneralLastChangeTime,
        ipGeneralNextMgmtAddress,
        ipGeneralStoredMgmtAddress,
        ipGeneralNextMgmtNetMask,
        ipGeneralStoredMgmtNetMask,
        ipGeneralConfigLastChangeTime,
        ipGeneralTelnetMode,
        ipGeneralFtpMode,
        ipGeneralIfTableSize,
        ipGeneralRouteTableSize,
        ipGeneralOspfIfTableSize,
        ipGeneralOspfNbrTableSize,
        ipGeneralChangeNextMgmtAddr,
        ipGeneralSftpMode,
        ipGeneralTftpMode,
        ipGeneralNetconfMode}
    STATUS      current
    DESCRIPTION
        "The general objects v7."
    ::= { lumIpGroups 15 }

ipIfGroupV2 OBJECT-GROUP
    OBJECTS {
        ipIfIndex,
        ipIfName,
        ipIfAddr,
        ipIfNetMask,
        ipIfOperStatus,
        ipIfDstAddr }
    STATUS      current
    DESCRIPTION
        "The IP interface objects."
    ::= { lumIpGroups 16 }

-- ----------------------------------------------------
-- Compliance
-- ----------------------------------------------------

lumIpBasicComplV1 MODULE-COMPLIANCE
    STATUS      deprecated
    DESCRIPTION
        "Basic implementation requirements for the IP MIB."
    MODULE
        MANDATORY-GROUPS {
            ipGeneralGroup,
            ipIfGroup,
            ipRouteGroup }
    ::= { lumIpCompl 1 }

lumIpBasicComplV2 MODULE-COMPLIANCE
    STATUS      deprecated
    DESCRIPTION
        "Basic implementation requirements for the
        IP MIB v2."
    MODULE
        MANDATORY-GROUPS {
            ipGeneralGroup,
            ipIfGroup,
            ipRouteGroup,
            ospfGeneralGroup,
            ospfIfGroup,
            ospfNbrGroup }
    ::= { lumIpCompl 2 }

lumIpBasicComplV3 MODULE-COMPLIANCE
    STATUS      deprecated
    DESCRIPTION
        "Basic implementation requirements for the
        IP MIB v3."
    MODULE
        MANDATORY-GROUPS {
            ipGeneralGroupV2,
            ipIfGroup,
            ipRouteGroup,
            ospfGeneralGroup,
            ospfIfGroup,
            ospfNbrGroup }
    ::= { lumIpCompl 3 }

lumIpBasicComplV4 MODULE-COMPLIANCE
    STATUS      deprecated
    DESCRIPTION
        "Basic implementation requirements for the
        IP MIB v4."
    MODULE
        MANDATORY-GROUPS {
            ipGeneralGroupV3,
            ipIfGroup,
            ipRouteGroup,
            ospfGeneralGroup,
            ospfIfGroup,
            ospfNbrGroup }
    ::= { lumIpCompl 4 }

lumIpBasicComplV5 MODULE-COMPLIANCE
    STATUS      deprecated
    DESCRIPTION
        "Basic implementation requirements for the
        IP MIB v5."
    MODULE
        MANDATORY-GROUPS {
            ipGeneralGroupV4,
            ipIfGroup,
            ipRouteGroup,
            ospfGeneralGroup,
            ospfIfGroup,
            ospfNbrGroup }
    ::= { lumIpCompl 5 }

lumIpBasicComplV6 MODULE-COMPLIANCE
    STATUS      deprecated
    DESCRIPTION
        "Basic implementation requirements for the
        IP MIB v6 (3.1)."
    MODULE
        MANDATORY-GROUPS {
            ipGeneralGroupV5,
            ipIfGroup,
            ipRouteGroupV2,
            ospfGeneralGroup,
            ospfIfGroup,
            ospfNbrGroupV2 }
    ::= { lumIpCompl 6 }

lumIpBasicComplV7 MODULE-COMPLIANCE
    STATUS      deprecated
    DESCRIPTION
        "Basic implementation requirements for the
        IP MIB v7 (13.0)."
    MODULE
        MANDATORY-GROUPS {
            ipGeneralGroupV5,
            ipIfGroup,
            ipRouteGroupV2,
            ospfGeneralGroup,
            ospfIfGroupV2,
            ospfNbrGroupV2 }
    ::= { lumIpCompl 7 }

lumIpBasicComplV8 MODULE-COMPLIANCE
    STATUS      deprecated
    DESCRIPTION
        "Basic implementation requirements for the
        IP MIB v8 (27.0)."
    MODULE
        MANDATORY-GROUPS {
            ipGeneralGroupV6,
            ipIfGroup,
            ipRouteGroupV2,
            ospfGeneralGroup,
            ospfIfGroupV2,
            ospfNbrGroupV2 }
    ::= { lumIpCompl 8 }

lumIpBasicComplV9 MODULE-COMPLIANCE
    STATUS      deprecated
    DESCRIPTION
        "Basic implementation requirements for the
        IP MIB v9 (30.1)."
    MODULE
        MANDATORY-GROUPS {
            ipGeneralGroupV7,
            ipIfGroup,
            ipRouteGroupV2,
            ospfGeneralGroup,
            ospfIfGroupV2,
            ospfNbrGroupV2 }
    ::= { lumIpCompl 9 }

lumIpBasicComplV10 MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION
        "Basic implementation requirements for the
        IP MIB v10 (32.0)."
    MODULE
        MANDATORY-GROUPS {
            ipGeneralGroupV7,
            ipIfGroupV2,
            ipRouteGroupV2,
            ospfGeneralGroup,
            ospfIfGroupV2,
            ospfNbrGroupV2 }
    ::= { lumIpCompl 10 }

END


