-- ============================================================================
-- Copyright (C) 2003 by HUAWEI 3COM TECHNOLOGIES.  All rights reserved.
--
-- Description: This MIB is a framework MIB for unicast technology
-- Reference:
-- Version: V1.0
-- History:
-- V1.0 2005-04-20 created by fuzhenyu
-- ============================================================================
H3C-UNICAST-MIB DEFINITIONS ::= BEGIN

    IMPORTS
        h3cCommon
            FROM HUAWEI-3COM-OID-MIB
        Integer32, Counter64, OBJECT-TYPE, MODULE-IDENTITY
            FROM SNMPv2-SMI
        TruthValue
            FROM SNMPv2-TC;


    h3cUnicast MODULE-IDENTITY
        LAST-UPDATED "200501311454Z"        -- January 31, 2005 at 14:54 GMT
        ORGANIZATION
            "Huawei 3com Technologies Co.,Ltd"
        CONTACT-INFO
            "Platform Team Hangzhou Institute Huawei-3Com Tech, Inc."
        DESCRIPTION
            " This MIB is a framework MIB for unicast related features."
        REVISION      "200503241454Z"
        DESCRIPTION
                " Revisions made by Hangzhou MIB team."
        ::= { h3cCommon 44 }


    h3cURPFTable OBJECT-TYPE
        SYNTAX SEQUENCE OF H3cURPFEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            " Unicast Reverse Path Forwarding (URPF) is used to prevent the network
            attacks caused by source address spoofing. This table is used to configure
            URPF on specific interfaces."
        ::= { h3cUnicast 1 }


    h3cURPFEntry OBJECT-TYPE
        SYNTAX H3cURPFEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            " The entry of h3cURPFTable, indexed by vlan interface index."
        INDEX { h3cURPFIfIndex }
        ::= { h3cURPFTable 1 }


    H3cURPFEntry ::=
        SEQUENCE {
            h3cURPFIfIndex
                Integer32,
            h3cURPFEnabled
                TruthValue,
            h3cURPFSlotID
                Integer32,
            h3cURPFTotalReceivedPacket
                Counter64,
            h3cURPFDroppedPacket
                Counter64,
            h3cURPFClearStat
                INTEGER
         }

    h3cURPFIfIndex OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            " The ifIndex of vlan interface."
        ::= { h3cURPFEntry 1 }

    h3cURPFEnabled OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            " This object is used to enable or disable URPF on certain vlan interfaces."
        DEFVAL { false }
        ::= { h3cURPFEntry 2 }

    h3cURPFSlotID OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            " This object specifies to which slot packets are redirected in order to
            perform URPF check."
        ::= { h3cURPFEntry 3 }

    h3cURPFTotalReceivedPacket OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            " This object provides total received packets number."
        ::= { h3cURPFEntry 4 }

    h3cURPFDroppedPacket OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            " This object provides total dropped invalid packets number."
        ::= { h3cURPFEntry 5 }

    h3cURPFClearStat OBJECT-TYPE
        SYNTAX INTEGER { reserved(0),reset(1) }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            " This object is used to clear the URPF statistics on certain
            vlan interfaces. This object is actually a write-only object.
            When read, it always returns 0. When set to 1, the objects
            h3cURPFTotalReceivedPacket and h3cURPFDroppedPacket are reset
            to 0."
        ::= { h3cURPFEntry 6 }

END
