-- Copyright (C) 2008-2014 Super Micro Computer Inc. All Rights Reserved

-- $Id: fsmpipvx.mib,v 1.4 2012/09/07 09:52:05 siva Exp $

SUPERMICRO-MIFS-IPVX-MIB DEFINITIONS ::= BEGIN
   IMPORTS
      MODULE-IDENTITY, OBJECT-TYPE, 
      Integer32, Unsigned32, enterprises FROM SNMPv2-SMI
      TruthValue, RowStatus  FROM SNMPv2-TC
      InetAddress, InetAddressType, 
      InetAddressPrefixLength FROM INET-ADDRESS-MIB
      InterfaceIndex FROM IF-MIB;
      
     fsMIFsIpvx MODULE-IDENTITY
     LAST-UPDATED "201209050000Z"
     ORGANIZATION "Super Micro Computer Inc."
     CONTACT-INFO "support@Supermicro.com"
     DESCRIPTION " This mib module is for IP module with virtual routing
     and forwarding support."
     REVISION "201209050000Z"
     DESCRIPTION " This mib module is for IP module with virtual routing
     and forwarding support."
      ::=  { enterprises  supermicro-computer-inc(10876) super-switch(101) basic(2) 34 } 
      
--Prefix Table

    fsMIIpvxAddrPrefixTable OBJECT-TYPE
    SYNTAX SEQUENCE OF FsMIIpvxAddrPrefixEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
    "This table is used as an alternate to populate the 
     ipAddressPrefixTable present in stdipvx.mib.This table is
     used to provide the rowstatus support to the standard 
     ipAddressPrefixTable."
    ::= { fsMIFsIpvx 1 }

    fsMIIpvxAddrPrefixEntry OBJECT-TYPE
    SYNTAX FsMIIpvxAddrPrefixEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
    "An address mapping for a particular interface."
    INDEX {
        fsMIIpvxAddrPrefixIfIndex, 
        fsMIIpvxAddrPrefixAddrType, 
        fsMIIpvxAddrPrefix, 
        fsMIIpvxAddrPrefixLen
        }
    ::= { fsMIIpvxAddrPrefixTable 1 }

    FsMIIpvxAddrPrefixEntry ::= SEQUENCE {
        fsMIIpvxAddrPrefixIfIndex      InterfaceIndex,
        fsMIIpvxAddrPrefixAddrType     InetAddressType, 
        fsMIIpvxAddrPrefix             InetAddress, 
        fsMIIpvxAddrPrefixLen          InetAddressPrefixLength,
        fsMIIpvxAddrPrefixContextId    Integer32,
        fsMIIpvxAddrPrefixProfileIndex Unsigned32,
        fsMIIpvxAddrPrefixSecAddrFlag  TruthValue,
        fsMIIpvxAddrPrefixRowStatus    RowStatus
    }


    fsMIIpvxAddrPrefixIfIndex OBJECT-TYPE
    SYNTAX InterfaceIndex
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
    "The index value that uniquely identifies the interface to
    which this entry is applicable. The interface identified by
    a particular value of this index is the same interface as
    identified by the same value of the IF-MIB.s ifIndex."
    ::= { fsMIIpvxAddrPrefixEntry 1 }

    fsMIIpvxAddrPrefixAddrType OBJECT-TYPE
    SYNTAX InetAddressType
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
    "The address type of fsMIIpvxAddrPrefixAddr."
    ::= { fsMIIpvxAddrPrefixEntry 2 }

    fsMIIpvxAddrPrefix OBJECT-TYPE
    SYNTAX InetAddress (SIZE(16))
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
    "The IP address to which this entry.s addressing information
    pertains. The address type of this object is specified in
    fsMIIpvxAddrPrefixAddrType.
    Implementors need to be aware that if the size of
    fsMIIpvxAddrPrefixAddr exceeds 116 octets, then OIDS of instances of
    columns in this row will have more than 128 sub-identifiers
    and cannot be accessed using SNMPv1, SNMPv2c, or SNMPv3."
    ::= { fsMIIpvxAddrPrefixEntry 3 }

    fsMIIpvxAddrPrefixLen OBJECT-TYPE
    SYNTAX InetAddressPrefixLength
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
    "The prefix length associated with this prefix.
    The value 0 has no special meaning for this object. It
    simply refers to address .::/0.."
    ::= { fsMIIpvxAddrPrefixEntry 4 }

    fsMIIpvxAddrPrefixContextId OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
    "The value of the virtual router identifier associated
     with the fsMIIpvxAddrPrefixIfIndex."
    ::= { fsMIIpvxAddrPrefixEntry 5 }

    fsMIIpvxAddrPrefixProfileIndex OBJECT-TYPE
    SYNTAX Unsigned32 
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION 
    "Indicates the index into the IPv6 Address Profile Table.
    This entry of the IPv6 Address Profile table defines the
    parameters for this address. For a link-local address,
    this object always takes the value zero and cannot be
    modified from SNMP."
    ::= { fsMIIpvxAddrPrefixEntry 6 }

    fsMIIpvxAddrPrefixSecAddrFlag OBJECT-TYPE
    SYNTAX TruthValue 
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
    "This flag indicates whether the address is primary address 
    or secondary address."
    DEFVAL { true }
    ::= { fsMIIpvxAddrPrefixEntry 7 }
    
    fsMIIpvxAddrPrefixRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
    "The status of this conceptual row.
    The RowStatus TC requires that this DESCRIPTION clause
    states under which circumstances other objects in this row
    can be modified. The value of this object has no effect on
    whether other objects in this conceptual row can be
    modified.
    A conceptual row can not be made active until the
    fsMIIpvxAddrPrefixIfIndex has been set to a valid index."
    ::= { fsMIIpvxAddrPrefixEntry 8 }

    fsMIIpvxTraceConfigTable    OBJECT-TYPE
        SYNTAX  SEQUENCE OF FsMIIpvxTraceConfigEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
          "This entity's IP Traceroute Configuration Table."
    ::= {  fsMIFsIpvx 2}

    fsMIIpvxTraceConfigEntry    OBJECT-TYPE
        SYNTAX FsMIIpvxTraceConfigEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "Contains the configuration information about a
            particular IP
            traceroute Operation."
        INDEX   { fsMIIpvxTraceConfigIndex,
                  fsMIIpvxTraceConfigAddrType,
                  fsMIIpvxTraceConfigDest }
        ::= { fsMIIpvxTraceConfigTable 1 }

    FsMIIpvxTraceConfigEntry ::=  SEQUENCE {
            fsMIIpvxTraceConfigIndex       Integer32,
            fsMIIpvxTraceConfigAddrType    InetAddressType, 
            fsMIIpvxTraceConfigDest        InetAddress,
            fsMIIpvxTraceConfigAdminStatus INTEGER,
            fsMIIpvxTraceConfigMaxTTL      Integer32,
            fsMIIpvxTraceConfigMinTTL      Integer32,
            fsMIIpvxTraceConfigOperStatus  INTEGER,
            fsMIIpvxTraceConfigTimeout     Integer32,
            fsMIIpvxTraceConfigMtu         Integer32,
            fsMIIpvxTraceConfigCxtId       Integer32
        }

    fsMIIpvxTraceConfigIndex         OBJECT-TYPE
        SYNTAX      Integer32 (0..10)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
          "Unique value that identifies the traceroute Entry"
    ::= {  fsMIIpvxTraceConfigEntry  1}


    fsMIIpvxTraceConfigAddrType OBJECT-TYPE
        SYNTAX     InetAddressType
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
          "The address type of  trace route IP address."
    ::= { fsMIIpvxTraceConfigEntry 2 }

    fsMIIpvxTraceConfigDest     OBJECT-TYPE
        SYNTAX      InetAddress (SIZE(16))
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
          "The destination IP address to which a route has to
              be traced."
    ::= { fsMIIpvxTraceConfigEntry 3 }

    fsMIIpvxTraceConfigAdminStatus      OBJECT-TYPE
        SYNTAX  INTEGER {
            on      (1),
            off     (2)
        }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
          "The desired status for the traceroute operation.
           This variable has to be made on (from off) for
           starting the operation. If this variable is set to
           on when fsIpTraceConfigOperStatus is inprogress,
           then GEN_ERROR is returned. This variable is set
           to off when the fsIpTraceConfigOperStatus becomes
           not inprogress."
        DEFVAL { on }
        ::= { fsMIIpvxTraceConfigEntry 4 }


    fsMIIpvxTraceConfigMaxTTL   OBJECT-TYPE
        SYNTAX  Integer32 (1..99)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
          "The maximum value of the TTL field to be filled up
           in the IP packets used for the traceroute."
        DEFVAL  { 15 }
    ::= { fsMIIpvxTraceConfigEntry 5 }


    fsMIIpvxTraceConfigMinTTL   OBJECT-TYPE
        SYNTAX  Integer32 (1..99)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The minimum value of the TTL field to be filled up
            in the IP packets used for the traceroute."
        DEFVAL  { 1 }
        ::= { fsMIIpvxTraceConfigEntry 6 }


    fsMIIpvxTraceConfigOperStatus OBJECT-TYPE
        SYNTAX  INTEGER {
            inprogress      (1),
            notinprogress   (2)
            }
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION "The current status for the traceroute operation."
        ::= { fsMIIpvxTraceConfigEntry 7 }

    fsMIIpvxTraceConfigTimeout OBJECT-TYPE
        SYNTAX  Integer32 (0..2147483647)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Interval between (in seconds) consecutive trace
            requests."
        ::= { fsMIIpvxTraceConfigEntry 8 }

    fsMIIpvxTraceConfigMtu OBJECT-TYPE
        SYNTAX  Integer32 (0..2147483647)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Number of octets of data to be sent in trace
            packets."
        ::= { fsMIIpvxTraceConfigEntry 9 }

    fsMIIpvxTraceConfigCxtId OBJECT-TYPE
        SYNTAX     Integer32 (0..255)
        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
          "A unique VR Id representing the Virtual Router"
    ::= { fsMIIpvxTraceConfigEntry 10}      

    fsMIIpvxTraceTable      OBJECT-TYPE
        SYNTAX  SEQUENCE OF FsMIIpvxTraceEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
          "This entity's IP Traceroute Table containing the
           results of the traceroute operation(s)."
    ::= { fsMIFsIpvx  3}

    fsMIIpvxTraceEntry      OBJECT-TYPE
        SYNTAX  FsMIIpvxTraceEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "Contains the  information about a particular
            intermediate node on the way to the destination."

        INDEX   { fsMIIpvxTraceAddrType,
                  fsMIIpvxTraceAddr,
                  fsMIIpvxTraceHopCount }
    ::= { fsMIIpvxTraceTable 1 }

    FsMIIpvxTraceEntry ::= SEQUENCE {
            fsMIIpvxTraceIndex           Integer32,
	    fsMIIpvxTraceAddrType        InetAddressType,
	    fsMIIpvxTraceAddr            InetAddress,
	    fsMIIpvxTraceHopCount        Integer32,
	    fsMIIpvxTraceIntermHop       InetAddress,
	    fsMIIpvxTraceReachTime1      Integer32,
	    fsMIIpvxTraceReachTime2      Integer32,
	    fsMIIpvxTraceReachTime3      Integer32,
	    fsMIIpvxTraceCxtId           Integer32  
         }

    fsMIIpvxTraceIndex         OBJECT-TYPE
        SYNTAX      Integer32 (0..10)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
          "Unique value that identifies the traceroute Entry"
    ::= {  fsMIIpvxTraceEntry 1}

    fsMIIpvxTraceAddrType OBJECT-TYPE
        SYNTAX     InetAddressType
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
          "The address type of  trace route IP address."
    ::= { fsMIIpvxTraceEntry 2 }

     fsMIIpvxTraceAddr   OBJECT-TYPE
          SYNTAX  InetAddress (SIZE(16))
          MAX-ACCESS  not-accessible
          STATUS  current
          DESCRIPTION
              "The destination IP address to which a route was
              traced."
          ::= {fsMIIpvxTraceEntry 3 }

     fsMIIpvxTraceHopCount OBJECT-TYPE
          SYNTAX  Integer32 (0..2147483647)
          MAX-ACCESS  not-accessible
          STATUS  current
          DESCRIPTION
              "The count of the number of hops required to reach
              this intermediate node."
          ::= {fsMIIpvxTraceEntry 4 }

     fsMIIpvxTraceIntermHop      OBJECT-TYPE
          SYNTAX  InetAddress (SIZE(16))
          MAX-ACCESS  read-only
          STATUS  current
          DESCRIPTION
              "The IP address of the intermediate node/destination."
          ::= {fsMIIpvxTraceEntry 5 }


     fsMIIpvxTraceReachTime1     OBJECT-TYPE
          SYNTAX  Integer32 (0..2147483647)
          MAX-ACCESS  read-only
          STATUS  current
          DESCRIPTION
              "The time in seconds required to reach this
              intermediate node.The value of '-1' denotes that the
              response was not received from this node"
          ::= {fsMIIpvxTraceEntry 6 }

     fsMIIpvxTraceReachTime2     OBJECT-TYPE
          SYNTAX  Integer32 (0..2147483647)
          MAX-ACCESS  read-only
          STATUS  current
          DESCRIPTION
              "The time in seconds required to reach this
              intermediate node for the second time. The value of
              '-1' denotes that the response was not received
              from this node"
          ::= {fsMIIpvxTraceEntry 7 }

     fsMIIpvxTraceReachTime3     OBJECT-TYPE
          SYNTAX  Integer32 (0..2147483647)
          MAX-ACCESS  read-only
          STATUS  current
          DESCRIPTION
              "The time in seconds required to reach this
              intermediate node for the third time. The value of
              '-1' denotes that the response was not received from
              this node"
          ::= {fsMIIpvxTraceEntry 8 }

    fsMIIpvxTraceCxtId  OBJECT-TYPE
        SYNTAX     Integer32 (0..255)
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
          "A unique VR Id representing the Virtual Router"
    ::= { fsMIIpvxTraceEntry 9}      

END
