--==================================================================
-- Copyright (C) 2015 by  HUAWEI TECHNOLOGIES. All rights reserved.
-- Description: This mib is used for defining the transparent bridge
-- MIB objects.
-- Reference:
-- Version: V2.01
-- History:
-- ==================================================================
-- ==================================================================
-- 
-- Varibles and types be imported
--
-- ==================================================================
HUAWEI-TRANSPARENTBRIDGE-MIB DEFINITIONS ::= BEGIN
IMPORTS
    
    RowStatus,MacAddress,TEXTUAL-CONVENTION
        FROM SNMPv2-TC

    MODULE-IDENTITY, OBJECT-TYPE, Integer32, OBJECT-IDENTITY, TimeTicks, 
    NOTIFICATION-TYPE, Counter64, IpAddress, Gauge32
        FROM SNMPv2-SMI  
        
    MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
        FROM SNMPv2-CONF
                
    hwDatacomm
        FROM HUAWEI-MIB
        
    ifIndex,InterfaceIndex
        FROM IF-MIB   
    
    EnabledStatus
        FROM P-BRIDGE-MIB
        
    hwBaseTrapSeverity, hwBaseTrapProbableCause, hwBaseTrapEventType
        FROM HUAWEI-BASE-TRAP-MIB;    
        
    hwTransparentBridgeMIB OBJECT IDENTIFIER ::= { hwDatacomm 242 }
    
    hwTransparentBridge MODULE-IDENTITY
        LAST-UPDATED "201505080000Z"        
    ORGANIZATION 
        "Huawei Technologies Co.,Ltd."
    CONTACT-INFO 
        "Huawei Industrial Base
          Bantian, Longgang
           Shenzhen 518129
           People's Republic of China
           Website: http://www.huawei.com
           Email: support@huawei.com
         "
    DESCRIPTION
            "The TransparentBridge MIB module is defined to manage TransparentBridge function of Huawei Technologies co.,Ltd."
    REVISION
            "201505080000Z"
    DESCRIPTION
            "Modify the value of the hwTPBridgeId and hwTPBridgeStatBridgeId."
            ::= { hwTransparentBridgeMIB 1 }
    
-- ==================================================================
--
-- ======================= definition begin =========================
--
-- ==================================================================
           
hwTPBridgeMngObjects OBJECT IDENTIFIER ::= { hwTransparentBridge 1 }
    
-- ==================================================================
-- groups in the hwTransparentBridge MIB
-- ==================================================================
hwTPBridgeBase          OBJECT IDENTIFIER ::= { hwTPBridgeMngObjects 1 }
hwTPBridgeApply         OBJECT IDENTIFIER ::= { hwTPBridgeMngObjects 2 }


    hwTPBridgeMIBTable OBJECT-TYPE
        SYNTAX SEQUENCE OF HwTPBridgeMIBEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "The table contains basic information for the bridge.
           The indexes of this table is hwTPBridgeId."
        ::= { hwTPBridgeBase  1 }


    hwTPBridgeMIBEntry OBJECT-TYPE
        SYNTAX HwTPBridgeMIBEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "Entries of TransparentBridge MIB table.
           The indexes of this entry is hwTPBridgeId."
        INDEX   { hwTPBridgeId }
        ::= { hwTPBridgeMIBTable 1}

    HwTPBridgeMIBEntry ::=
    SEQUENCE {
        hwTPBridgeId    Integer32   ,
        hwTPBridgeMacLearn EnabledStatus  ,
        hwTPBridgeRoutingIp EnabledStatus ,
        hwTPBridgeBridgingIp EnabledStatus, 
        hwTPBridgeBridgingOther EnabledStatus, 
        hwTPBridgeAdminStatus EnabledStatus,
        hwTPBridgeRowStatus    RowStatus 
        }

    hwTPBridgeId OBJECT-TYPE
        SYNTAX  Integer32(0..2147483647)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "The identifier of this bridge."
        ::= { hwTPBridgeMIBEntry 1 }

    hwTPBridgeMacLearn OBJECT-TYPE   
        SYNTAX  EnabledStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION 
           "The value indicates whether the MAC address learning is opened. The value enabled(1) indicates learning is allowed. 
           Default value is enabled(1)."
        ::= { hwTPBridgeMIBEntry 2 }
        
    hwTPBridgeRoutingIp  OBJECT-TYPE
        SYNTAX  EnabledStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION 
           "The value indicates which routing ip function is opened. The value enabled(1) indicates routing ip is allowed. 
           Default value is disable(2)."
        ::= { hwTPBridgeMIBEntry 3 }
        
    hwTPBridgeBridgingIp  OBJECT-TYPE
        SYNTAX  EnabledStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION 
           "The value indicates which bridging ip function is opened. The value enabled(1) indicates bridging ip is allowed. 
           Default value is enabled(1)."
        ::= { hwTPBridgeMIBEntry 4 }
        
    hwTPBridgeBridgingOther  OBJECT-TYPE
        SYNTAX  EnabledStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION 
           "The value indicates which bridging other protocol function is opened. The value enabled(1) indicates bridging other protocol is allowed. 
           Default value is enabled(1)."
        ::= { hwTPBridgeMIBEntry 5 }
        
    hwTPBridgeAdminStatus  OBJECT-TYPE
        SYNTAX  EnabledStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION 
           "Value disable(2) indicates shutdown the bridge; enabled(1) indicates open the bridge."
        DEFVAL  {1}
        ::= { hwTPBridgeMIBEntry 6 }
        
    hwTPBridgeRowStatus  OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION 
           "Operation status."
        ::= { hwTPBridgeMIBEntry 7 } 
        
        
    hwTPBridgeMemberMIBTable OBJECT-TYPE
        SYNTAX SEQUENCE OF HwTPBridgeMemberMIBEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "The table contains basic information for the bridge membership.
           The indexes of this table are hwTPBridgeId, hwTPBridgeMemberIfIndex."
        ::= { hwTPBridgeBase  2 }
        
    hwTPBridgeMemberMIBEntry OBJECT-TYPE
        SYNTAX HwTPBridgeMemberMIBEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "Entries of TransparentBridge member MIB table.
           The indexes of this entry are hwTPBridgeId, hwTPBridgeMemberIfIndex."
        INDEX   { hwTPBridgeId, hwTPBridgeMemberIfIndex }
        ::= { hwTPBridgeMemberMIBTable 1}

    HwTPBridgeMemberMIBEntry ::=
        SEQUENCE {
            hwTPBridgeMemberIfIndex
                InterfaceIndex,
            hwTPBridgeMemberVlanTransparent
                EnabledStatus,
            hwTPBridgeMemberRowStatus
                RowStatus 
            }

    hwTPBridgeMemberIfIndex OBJECT-TYPE
        SYNTAX  InterfaceIndex
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "The IfIndex of this bridge member."
        ::= { hwTPBridgeMemberMIBEntry 1 }

    hwTPBridgeMemberVlanTransparent OBJECT-TYPE   
        SYNTAX  EnabledStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION 
           "The value indicates whether the VLAN transparent is opened. The value enabled(1) indicates VLAN transparent is allowed. 
           Default value is disabled(2)."
        ::= { hwTPBridgeMemberMIBEntry 2 }
        
    hwTPBridgeMemberRowStatus  OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION 
           "Operation status."
        ::= { hwTPBridgeMemberMIBEntry 3 } 
        
        
    hwTPBridgeStatTable OBJECT-TYPE
        SYNTAX SEQUENCE OF HwTPBridgeStatEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "The table contains statistics information for the bridge.
           The indexes of this table is hwTPBridgeStatBridgeId."
        ::= { hwTPBridgeApply 1 }

    hwTPBridgeStatEntry OBJECT-TYPE
        SYNTAX HwTPBridgeStatEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "Entries of bridge statistics table.
           The indexes of this entry is hwTPBridgeStatBridgeId."
        INDEX { hwTPBridgeStatBridgeId }
        ::= { hwTPBridgeStatTable 1 }
    
    HwTPBridgeStatEntry ::=
        SEQUENCE { 
            hwTPBridgeStatBridgeId 
                Integer32,
            hwTPBridgeStatInTotalPkts
                Counter64,
            hwTPBridgeStatInBPDUPkts 
                Counter64,
            hwTPBridgeStatInUcastkts 
                Counter64,
            hwTPBridgeStatInMcastkts 
                Counter64,
            hwTPBridgeStatInBcastkts 
                Counter64,
            hwTPBridgeStatOutTotalPkts
                Counter64,
            hwTPBridgeStatOutBPDUPkts 
                Counter64,
            hwTPBridgeStatOutUcastkts 
                Counter64,
            hwTPBridgeStatOutMcastkts 
                Counter64,
            hwTPBridgeStatOutBcastkts 
                Counter64,
            hwTPBridgeStatResetFlag
                EnabledStatus
         }

    
    hwTPBridgeStatBridgeId  OBJECT-TYPE
        SYNTAX Integer32(0..2147483647)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "The bridge-id."
        ::= { hwTPBridgeStatEntry 1 }
        
        
    hwTPBridgeStatInTotalPkts OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of received packets."
        ::= { hwTPBridgeStatEntry 2 }
    
    
    hwTPBridgeStatInBPDUPkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of BPDU packets received."
        ::= { hwTPBridgeStatEntry 3 }
        
    hwTPBridgeStatInUcastkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of unicast packets received."
        ::= { hwTPBridgeStatEntry 4 }
        
    hwTPBridgeStatInMcastkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of multicast packets received."
        ::= { hwTPBridgeStatEntry 5 }
        
    hwTPBridgeStatInBcastkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of broadcast packets received."
        ::= { hwTPBridgeStatEntry 6 }
        
    
    hwTPBridgeStatOutTotalPkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION  
           "The number of sent packets."
        ::= { hwTPBridgeStatEntry 7 }
        
    
    hwTPBridgeStatOutBPDUPkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of BPDU packets sent."
        ::= { hwTPBridgeStatEntry 8 }
        
    hwTPBridgeStatOutUcastkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of unicast packets sent."
        ::= { hwTPBridgeStatEntry 9 }
        
    hwTPBridgeStatOutMcastkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of multicast packets sent."
        ::= { hwTPBridgeStatEntry 10 }
        
    hwTPBridgeStatOutBcastkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of broadcast packets sent."
        ::= { hwTPBridgeStatEntry 11 }        
    
    hwTPBridgeStatResetFlag  OBJECT-TYPE
        SYNTAX EnabledStatus
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION 
           "The flag of reset."
        ::= { hwTPBridgeStatEntry 12 }
        
        
        
    hwTPBridgeMemberStatTable OBJECT-TYPE
        SYNTAX SEQUENCE OF HwTPBridgeMemberStatEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "The table contains statistics information for the member of bridge.
           The indexes of this table is hwTPBridgeMemberStatIfIndex."
        ::= { hwTPBridgeApply 2 }

    hwTPBridgeMemberStatEntry OBJECT-TYPE
        SYNTAX HwTPBridgeMemberStatEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "Entries of bridge member statistics table.
           The indexes of this entry is hwTPBridgeMemberStatIfIndex."
        INDEX { hwTPBridgeMemberStatIfIndex }
        ::= { hwTPBridgeMemberStatTable 1 }
    
    HwTPBridgeMemberStatEntry ::=
        SEQUENCE { 
            hwTPBridgeMemberStatIfIndex 
                InterfaceIndex,
            hwTPBridgeMemberStatInTotalPkts
                Counter64,
            hwTPBridgeMemberStatInBPDUPkts 
                Counter64,
            hwTPBridgeMemberStatInUcastkts 
                Counter64,
            hwTPBridgeMemberStatInMcastkts 
                Counter64,
            hwTPBridgeMemberStatInBcastkts 
                Counter64,
            hwTPBridgeMemberStatOutTotalPkts
                Counter64,
            hwTPBridgeMemberStatOutBPDUPkts 
                Counter64,
            hwTPBridgeMemberStatOutUcastkts 
                Counter64,
            hwTPBridgeMemberStatOutMcastkts 
                Counter64,
            hwTPBridgeMemberStatOutBcastkts 
                Counter64
         }
    
    hwTPBridgeMemberStatIfIndex OBJECT-TYPE
        SYNTAX  InterfaceIndex
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "The IfIndex of this bridge member."
        ::= { hwTPBridgeMemberStatEntry 1 }
        
        
    hwTPBridgeMemberStatInTotalPkts OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of received packets."
        ::= { hwTPBridgeMemberStatEntry 2 }
    
    
    hwTPBridgeMemberStatInBPDUPkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of BPDU packets received."
        ::= { hwTPBridgeMemberStatEntry 3 }
        
    hwTPBridgeMemberStatInUcastkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of unicast packets received."
        ::= { hwTPBridgeMemberStatEntry 4 }
        
    hwTPBridgeMemberStatInMcastkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of multicast packets received."
        ::= { hwTPBridgeMemberStatEntry 5 }
        
    hwTPBridgeMemberStatInBcastkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of broadcast packets received."
        ::= { hwTPBridgeMemberStatEntry 6 }
        
    
    hwTPBridgeMemberStatOutTotalPkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION  
           "The number of sent packets."
        ::= { hwTPBridgeMemberStatEntry 7 }
        
    
    hwTPBridgeMemberStatOutBPDUPkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of BPDU packets sent."
        ::= { hwTPBridgeMemberStatEntry 8 }
        
    hwTPBridgeMemberStatOutUcastkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of unicast packets sent."
        ::= { hwTPBridgeMemberStatEntry 9 }
        
    hwTPBridgeMemberStatOutMcastkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of multicast packets sent."
        ::= { hwTPBridgeMemberStatEntry 10 }
        
    hwTPBridgeMemberStatOutBcastkts  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of broadcast packets sent."
        ::= { hwTPBridgeMemberStatEntry 11 }     
        
-- ==================================================================
-- compliance statements
-- ==================================================================
    hwTPBridgeConformance  OBJECT IDENTIFIER ::= { hwTransparentBridge 2 }   
                        
    hwTPBridgeCompliances  OBJECT IDENTIFIER ::= { hwTPBridgeConformance 1 }
    hwTPBridgeGroups       OBJECT IDENTIFIER ::= { hwTPBridgeConformance 2 }    
                
    hwTPBridgeCompliance  MODULE-COMPLIANCE
	STATUS current
	DESCRIPTION
            "The core compliance statement for all implementations."
	MODULE -- this module
	MANDATORY-GROUPS  {
            hwTPBridgeGroup,  
            hwTPBridgeMemberGroup          		            
	    }
	    ::= { hwTPBridgeCompliances 1 } 
	    
    hwTPBridgeGroup OBJECT-GROUP
	OBJECTS {  hwTPBridgeMacLearn, hwTPBridgeRoutingIp, hwTPBridgeBridgingIp, hwTPBridgeBridgingOther, hwTPBridgeAdminStatus,  hwTPBridgeRowStatus }
	STATUS      current
	DESCRIPTION
	        " "
	::= { hwTPBridgeGroups 1 }	
	
    hwTPBridgeMemberGroup OBJECT-GROUP
	OBJECTS { hwTPBridgeMemberVlanTransparent, hwTPBridgeMemberRowStatus }
	STATUS      current
	DESCRIPTION
	        " "
	::= { hwTPBridgeGroups 2 }
	
    hhwTPBridgeStatGroup OBJECT-GROUP
	OBJECTS { hwTPBridgeStatInTotalPkts, hwTPBridgeStatInBPDUPkts, hwTPBridgeStatInUcastkts, hwTPBridgeStatInMcastkts, hwTPBridgeStatInBcastkts,
            hwTPBridgeStatOutTotalPkts, hwTPBridgeStatOutBPDUPkts,  hwTPBridgeStatOutUcastkts, hwTPBridgeStatOutMcastkts, hwTPBridgeStatOutBcastkts, hwTPBridgeStatResetFlag }
	STATUS      current
	DESCRIPTION
	        " "
	::= { hwTPBridgeGroups 3 }
	
    hwTPBridgeMemberStatGroup OBJECT-GROUP
	OBJECTS { hwTPBridgeMemberStatInTotalPkts, hwTPBridgeMemberStatInBPDUPkts, hwTPBridgeMemberStatInUcastkts, hwTPBridgeMemberStatInMcastkts ,
	          hwTPBridgeMemberStatInBcastkts, hwTPBridgeMemberStatOutTotalPkts, hwTPBridgeMemberStatOutBPDUPkts, hwTPBridgeMemberStatOutUcastkts, hwTPBridgeMemberStatOutMcastkts,
                  hwTPBridgeMemberStatOutBcastkts }
	STATUS      current
	DESCRIPTION
	        " "
	::= { hwTPBridgeGroups 4 }			    
                                                                      

END 