-- =============================================================================
-- Copyright (c) 2004-2016 Hangzhou H3C Tech. Co., Ltd. All rights reserved.
--
-- Description: The MIB for VSI (Virtual Switch Instance).
-- Reference:
-- Version: V1.7
-- History:
--   V1.0 2009-08-08 Initial version Created by Zhonghua Gao
--   V1.1 2012-11-21 Modified by yanneng, added h3cVsiSpbIsid,
--               Value 'default(0)' is added for data type 'h3cVsiMode'
--   V1.2 2013-04-27 Modified by raoxiaobing, Value 'minmpxp(6), martiniAndMinmpxp(7)
--               and kompellaAndMinmpxp(8)' is added for data type 'h3cVsiMode'
--   V1.3 2013-09-11 Modified by yanneng, added h3cVsiPwBindTable table.
--   V1.4 2013-11-22 Modified by yanneng, added h3cVsiL2vpnStatus,
--               h3cVsiVxlanID, h3cVsiArpSuppression, h3cVsiFlooding,
--               h3cVsiLocalMacCount, h3cVsiFloodMacTable, h3cVsiLocalMacTable
--   V1.5 2014-03-22 Modified by wangrui, added h3cVsiInterfaceID, h3cVsiStatistics,
--               h3cVsiPerfTable, h3cVsiIfTable
--        2014-04-12 Modified by yanneng, added h3cVsiNvgreID
--   V1.6 2015-05-19 Modified by fuzhihua, modified h3cVsiXconnectEvcSrvInstId
--   V1.7 2016-10-29 Modified by liuqingye, added value 'vxlan(9)' for
--               data type 'h3cVsiMode'
-- =============================================================================
H3C-VSI-MIB DEFINITIONS ::= BEGIN
IMPORTS
        RowStatus, TruthValue, MacAddress
    FROM SNMPv2-TC
        MODULE-IDENTITY,
        OBJECT-TYPE,
        Integer32,
        Counter64,
        Unsigned32
    FROM SNMPv2-SMI
        InterfaceIndex
    FROM IF-MIB
        h3cCommon
    FROM HUAWEI-3COM-OID-MIB;

-- =============================================================================
-- module identity part
-- =============================================================================
h3cVsi MODULE-IDENTITY
    LAST-UPDATED
        "201610291650Z"        -- Oct 29, 2016 at 16:50 GMT
    ORGANIZATION
        "Hangzhou H3C Technologies Co., Ltd."
    CONTACT-INFO
        "Platform Team Hangzhou H3C Technologies Co., Ltd.
         Hai-Dian District Beijing P.R. China
         http://www.h3c.com
         Zip:100085"
    DESCRIPTION
        "The MIB for VSI (Virtual Switch Instance)."
    REVISION
        "201610291650Z"   -- Oct 29, 2016 at 16:50 GMT
    DESCRIPTION
        "Added value 'vxlan(9)' for data type 'h3cVsiMode' version."
    REVISION
        "201505261555Z"   -- May 26, 2015 at 15:55 GMT
    DESCRIPTION
        "Modified h3cVsiXconnectEvcSrvInstId version."
    REVISION
        "200908081000Z"   -- Aug 08, 2009 at 10:00 GMT
    DESCRIPTION
        "Initial version."
    ::= { h3cCommon 105 }

-- =============================================================================
-- object definition begin
-- =============================================================================

h3cVsiObjects      OBJECT IDENTIFIER ::= { h3cVsi 1 }

h3cVsiScalarGroup OBJECT IDENTIFIER ::= { h3cVsiObjects 1 }

h3cVsiNextAvailableVsiIndex    OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Next available VSI entry index for creating VSI.  Its value ranges
        from 0x1 to 0xFFFFFFFF.  The invalid value 0xFFFFFFFF indicates that
        no VSI entry can be created."
    ::= { h3cVsiScalarGroup 1 }

h3cVsiL2vpnStatus    OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The global configuration of L2VPN."
    ::= { h3cVsiScalarGroup 2 }

-- =============================================================================
-- h3cVsiTable Definition
-- =============================================================================
h3cVsiTable  OBJECT-TYPE
    SYNTAX      SEQUENCE OF H3cVsiEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table for configuring VSI parameters."
    ::= { h3cVsiObjects 2 }

h3cVsiEntry  OBJECT-TYPE
    SYNTAX      H3cVsiEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry for configuring VSI parameters."
    INDEX
    {
        h3cVsiIndex
    }
    ::= { h3cVsiTable 1 }

H3cVsiEntry ::=
    SEQUENCE
    {
        h3cVsiIndex             Unsigned32,
        h3cVsiName              OCTET STRING,
        h3cVsiMode              INTEGER,
        h3cMinmIsid             Integer32,
        h3cVsiId                Unsigned32,
        h3cVsiTransMode         INTEGER,
        h3cVsiEnableHubSpoke    INTEGER,
        h3cVsiAdminState        INTEGER,
        h3cVsiRowStatus         RowStatus,
        h3cVsiSpbIsid           Integer32,
        h3cVsiVxlanID           Unsigned32,
        h3cVsiArpSuppression    TruthValue,
        h3cVsiFlooding          TruthValue,
        h3cVsiLocalMacCount     Unsigned32,
        h3cVsiInterfaceID       Unsigned32,
        h3cVsiStatistics        TruthValue,
        h3cVsiNvgreID           Unsigned32
    }

h3cVsiIndex    OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Index of VSI.  Its value ranges from 0x1 to 0xFFFFFFFE."
    ::= { h3cVsiEntry 1 }

h3cVsiName    OBJECT-TYPE
    SYNTAX      OCTET STRING(SIZE(1..31))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Name of VSI.  Max string length of VSI name is 31."
    ::= { h3cVsiEntry 2 }

h3cVsiMode    OBJECT-TYPE
    SYNTAX      INTEGER
    {
        default(0),
        martini(1),
        minm(2),
        martiniAndMinm(3),
        kompella(4),
        kompellaAndMinm(5),
        minmpxp(6),
        martiniAndMinmpxp(7),
        kompellaAndMinmpxp(8),
        vxlan(9)
    }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Mode of VSI.  Martini mode indicated this VSI supports VPLS service
         signalled using LDP.  Kompella indicated this VSI supports VPLS
         service signalled using BGP.  Minm indicated this VSI supports
         MAC-in-MAC service.
         Default indicated this VSI supports all services."

    ::= { h3cVsiEntry 3 }

h3cMinmIsid    OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The PBB I-SID of VSI in minm or martiniAndMinm mode.  It
        must be different for every VSI.  Its value ranges from 0x1 to
        0xFFFFFF.  In other VSI modes, its value is invalid value 0x0."
    ::= { h3cVsiEntry 4 }

h3cVsiId    OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Identifier of VSI in martini or martiniAndMinm mode, by default,
        it's the PW ID of this VSI.  Its value ranges from 1 to 4294967295.
        In other VSI modes, its value is invalid value 0."
    ::= { h3cVsiEntry 5 }

h3cVsiTransMode    OBJECT-TYPE
    SYNTAX      INTEGER
    {
        vlan(1),
        ethernet(2)
    }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Transit Mode of VSI."
    ::= { h3cVsiEntry 6 }

h3cVsiEnableHubSpoke    OBJECT-TYPE
    SYNTAX      INTEGER
    {
        disable(1),
        enable(2)
    }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Config HubSpoke property of this VSI."
    ::= { h3cVsiEntry 7 }

h3cVsiAdminState   OBJECT-TYPE
    SYNTAX      INTEGER
    {
        adminUp(1),
        adminDown(2)
    }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Set VSI admin state as adminUp or adminDown."
    ::= { h3cVsiEntry 8 }

h3cVsiRowStatus     OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Operation status of this table entry."
    ::= { h3cVsiEntry 9 }

h3cVsiSpbIsid    OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The SPB I-SID of VSI in minm or martiniAndMinm mode.  It
        must be different for every VSI.  Its value ranges from 0xFF to
        0xFFFFFF.  In other VSI modes, its value is invalid value 0x0."
    ::= { h3cVsiEntry 10 }

h3cVsiVxlanID    OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "VXLAN ID, in the range of 0x0 to 0xFFFFFF.  Value 0xFFFFFFFF means
        this VSI does not enable VXLAN service."
    ::= { h3cVsiEntry 11 }

h3cVsiArpSuppression    OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The capability of ARP suppression."
    DEFVAL { false }
    ::= { h3cVsiEntry 12 }

h3cVsiFlooding    OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The capability of MAC(Media Access Control) flooding."
    DEFVAL { true }
    ::= { h3cVsiEntry 13 }

h3cVsiLocalMacCount    OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of VSI local MAC addresses."
    ::= { h3cVsiEntry 14 }

h3cVsiInterfaceID    OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "VSI interface ID.  A value of 0xFFFFFFFF indicates that no gateway
        interface has been assigned to the VSI."
    ::= { h3cVsiEntry 15 }

h3cVsiStatistics    OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The enable status of VSI traffic flow statistics."
    DEFVAL { false }
    ::= { h3cVsiEntry 16 }

h3cVsiNvgreID    OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "NVGRE ID, in the range of 4096 to 16777214.  Value 4294967295 means
        this VSI does not enable NVGRE service."
    ::= { h3cVsiEntry 17 }

-- =============================================================================
-- End of h3cVsiTable Definition
-- =============================================================================

-- =============================================================================
-- h3cVsiXconnectTable Definition
-- =============================================================================
h3cVsiXconnectTable  OBJECT-TYPE
    SYNTAX      SEQUENCE OF H3cVsiXconnectEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table for configuring xconnect parameters."
    ::= { h3cVsiObjects 3 }

h3cVsiXconnectEntry  OBJECT-TYPE
    SYNTAX      H3cVsiXconnectEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry for configuring xconnect parameters.  Each entry means
        connecting a service instance of a interface to a VSI."
    INDEX
    {
        h3cVsiXconnectIfIndex,
        h3cVsiXconnectEvcSrvInstId
    }
    ::= { h3cVsiXconnectTable 1 }

H3cVsiXconnectEntry ::=
    SEQUENCE
    {
        h3cVsiXconnectIfIndex      Unsigned32,
        h3cVsiXconnectEvcSrvInstId Unsigned32,
        h3cVsiXconnectVsiName      OCTET STRING,
        h3cVsiXconnectAccessMode   INTEGER,
        h3cVsiXconnectHubSpoke     INTEGER,
        h3cVsiXconnectRowStatus    RowStatus
    }
h3cVsiXconnectIfIndex    OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Index of the interface associated with the VSI."
    ::= { h3cVsiXconnectEntry 1 }

h3cVsiXconnectEvcSrvInstId    OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Index of the service instance associated with the VSI.  The value is always 0 when the
         interface isn't a layer 2 Ethernet interface."
    ::= { h3cVsiXconnectEntry 2 }


h3cVsiXconnectVsiName    OBJECT-TYPE
    SYNTAX      OCTET STRING(SIZE(1..31))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Name of VSI.  Max string length of VSI name is 31."
    ::= { h3cVsiXconnectEntry 3 }

h3cVsiXconnectAccessMode    OBJECT-TYPE
    SYNTAX      INTEGER
    {
        vlan(1),
        ethernet(2)
    }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Access mode of this service instance."
    ::= { h3cVsiXconnectEntry 4 }

h3cVsiXconnectHubSpoke    OBJECT-TYPE
    SYNTAX      INTEGER
    {
        none(1),
        hub(2),
        spoke(3)
    }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Config HubSpoke property of this service instance."
    ::= { h3cVsiXconnectEntry 5 }

h3cVsiXconnectRowStatus     OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Operation status of this table entry."
    ::= { h3cVsiXconnectEntry 6 }

-- =============================================================================
-- End of h3cVsiXconnectTable Definition
-- =============================================================================

-- =============================================================================
-- h3cVsiPwBindTable Definition
-- =============================================================================
h3cVsiPwBindTable  OBJECT-TYPE
    SYNTAX      SEQUENCE OF H3cVsiPwBindEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table for PW(PseudoWire) mapping to VSI."
    ::= { h3cVsiObjects 4 }

h3cVsiPwBindEntry  OBJECT-TYPE
    SYNTAX      H3cVsiPwBindEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry means a PW mapping to a VSI."
    INDEX
    {
        h3cVsiIndex,
        h3cVsiPwIndex
    }
    ::= { h3cVsiPwBindTable 1 }

H3cVsiPwBindEntry ::=
    SEQUENCE
    {
        h3cVsiPwIndex            Unsigned32,
        h3cVsiPwBindAttributes   BITS,
        h3cVsiPwBindRowStatus    RowStatus
    }

h3cVsiPwIndex    OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A unique index for the conceptual row identifying
         a PW in the pwTable."
    ::= { h3cVsiPwBindEntry 1 }

h3cVsiPwBindAttributes    OBJECT-TYPE
    SYNTAX      BITS {
                     noSplitHorizon (0),
                     hub (1)
                    }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "This bit mask indicates optional values for this PW.
         The following describes these bit fields:

         noSplitHorizon flag indicates that the PW disable
         split horizon forwarding.

         hub flag indicates that the PW as the hub link the VSI."
    ::= { h3cVsiPwBindEntry 2 }

h3cVsiPwBindRowStatus     OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Operation status of this table entry.  A row entry cannot
        be modified when the value of this object is 'active'."
    ::= { h3cVsiPwBindEntry 3 }

-- =============================================================================
-- End of h3cVsiPwBindTable Definition
-- =============================================================================

-- =============================================================================
-- h3cVsiFloodMacTable Definition
-- =============================================================================
h3cVsiFloodMacTable  OBJECT-TYPE
    SYNTAX      SEQUENCE OF H3cVsiFloodMacEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of MAC addresses enabled with selective flooding."
    ::= { h3cVsiObjects 5 }

h3cVsiFloodMacEntry  OBJECT-TYPE
    SYNTAX      H3cVsiFloodMacEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry represents a selective flooding MAC."
    INDEX
    {
        h3cVsiIndex,
        h3cVsiFloodMac
    }
    ::= { h3cVsiFloodMacTable 1 }

H3cVsiFloodMacEntry ::=
    SEQUENCE
    {
        h3cVsiFloodMac               MacAddress,
        h3cVsiFloodMacRowStatus      RowStatus
    }

h3cVsiFloodMac    OBJECT-TYPE
    SYNTAX      MacAddress
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "MAC address."
    ::= { h3cVsiFloodMacEntry 1 }

h3cVsiFloodMacRowStatus     OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Operation status of this table entry."
    ::= { h3cVsiFloodMacEntry 2 }

-- =============================================================================
-- End of h3cVsiFloodMacTable Definition
-- =============================================================================

-- =============================================================================
-- h3cVsiLocalMacTable Definition
-- =============================================================================
h3cVsiLocalMacTable  OBJECT-TYPE
    SYNTAX      SEQUENCE OF H3cVsiLocalMacEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table for VSI local MAC addresses."
    ::= { h3cVsiObjects 6 }

h3cVsiLocalMacEntry  OBJECT-TYPE
    SYNTAX      H3cVsiLocalMacEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A local MAC address of VSI."
    INDEX
    {
        h3cVsiIndex,
        h3cVsiLocalMacAddr
    }
    ::= { h3cVsiLocalMacTable 1 }

H3cVsiLocalMacEntry ::=
    SEQUENCE
    {
        h3cVsiLocalMacAddr            MacAddress,
        h3cVsiLocalMacIfIndex         InterfaceIndex,
        h3cVsiLocalMacSrvID           Unsigned32
    }

h3cVsiLocalMacAddr    OBJECT-TYPE
    SYNTAX      MacAddress
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "MAC address."
    ::= { h3cVsiLocalMacEntry 1 }

h3cVsiLocalMacIfIndex    OBJECT-TYPE
    SYNTAX      InterfaceIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Index of the interface associated with the MAC address."
    ::= { h3cVsiLocalMacEntry 2 }

h3cVsiLocalMacSrvID    OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Index of the service instance associated with the MAC address."
    ::= { h3cVsiLocalMacEntry 3 }

-- =============================================================================
-- End of h3cVsiLocalMacTable Definition
-- =============================================================================

-- =============================================================================
-- h3cVsiPerfTable Definition
-- =============================================================================
h3cVsiPerfTable  OBJECT-TYPE
    SYNTAX      SEQUENCE OF H3cVsiPerfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table contains performance statistics for each VSI."
    ::= { h3cVsiObjects 7 }

h3cVsiPerfEntry  OBJECT-TYPE
    SYNTAX      H3cVsiPerfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A row in this table contains statistics for a VSI."
    INDEX
    {
        h3cVsiIndex
    }
    ::= { h3cVsiPerfTable 1 }

H3cVsiPerfEntry ::=
    SEQUENCE
    {
        h3cVsiPerfInOctets            Counter64,
        h3cVsiPerfInPackets           Counter64,
        h3cVsiPerfInErrors            Counter64,
        h3cVsiPerfInDiscards          Counter64,
        h3cVsiPerfOutOctets           Counter64,
        h3cVsiPerfOutPackets          Counter64,
        h3cVsiPerfOutErrors           Counter64,
        h3cVsiPerfOutDiscards         Counter64
    }

h3cVsiPerfInOctets    OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Total number of octets received by the VSI."
    ::= { h3cVsiPerfEntry 1 }

h3cVsiPerfInPackets    OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Total number of packets received by the VSI."
    ::= { h3cVsiPerfEntry 2 }

h3cVsiPerfInErrors    OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of error packets received by the VSI."
    ::= { h3cVsiPerfEntry 3 }

h3cVsiPerfInDiscards    OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of incoming packets discarded by the VSI."
    ::= { h3cVsiPerfEntry 4 }

h3cVsiPerfOutOctets    OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Total number of octets sent by the VSI."
    ::= { h3cVsiPerfEntry 5 }

h3cVsiPerfOutPackets    OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Total number of packets sent by the VSI."
    ::= { h3cVsiPerfEntry 6 }

h3cVsiPerfOutErrors    OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of packets that failed to be sent because of a VSI error."
    ::= { h3cVsiPerfEntry 7 }

h3cVsiPerfOutDiscards    OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "Number of packets discarded by the VSI because of transmission failure."
    ::= { h3cVsiPerfEntry 8 }
-- =============================================================================
-- End of h3cVsiPerfTable Definition
-- =============================================================================

-- =============================================================================
-- h3cVsiNextAvailableVsiIfID Definition
-- =============================================================================
h3cVsiNextAvailableVsiIfID OBJECT-TYPE
   SYNTAX        Unsigned32
   MAX-ACCESS    read-only
   STATUS        current
   DESCRIPTION
       "This object contains the next available value for h3cVsiIfID
        when creating entries in the h3cVsiIfTable.  A value of 0xFFFFFFFF
        indicates that no new entries can be created in this table.
        To prevent managers from creating entries in this table, the agent
        must set this object to this special value."
   ::= { h3cVsiObjects 8 }

-- =============================================================================
-- h3cVsiIfTable Definition
-- =============================================================================
h3cVsiIfTable  OBJECT-TYPE
    SYNTAX      SEQUENCE OF H3cVsiIfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "VSI interface table."
    ::= { h3cVsiObjects 9 }

h3cVsiIfEntry  OBJECT-TYPE
    SYNTAX      H3cVsiIfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A row in this table contains a VSI interface."
    INDEX
    {
        h3cVsiIfID
    }
    ::= { h3cVsiIfTable 1 }

H3cVsiIfEntry ::=
    SEQUENCE
    {
        h3cVsiIfID               Unsigned32,
        h3cVsiIfIndex            InterfaceIndex,
        h3cVsiIfRowStatus        RowStatus
    }

h3cVsiIfID    OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "VSI interface ID."
    ::= { h3cVsiIfEntry 1 }

h3cVsiIfIndex    OBJECT-TYPE
    SYNTAX      InterfaceIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "VSI interface index."
    ::= { h3cVsiIfEntry 2 }

h3cVsiIfRowStatus     OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Operation status of the table entry."
    ::= { h3cVsiIfEntry 3 }

-- =============================================================================
-- End of h3cVsiIfTable Definition
-- =============================================================================

END
