    BROADCOM-MIB DEFINITIONS ::= BEGIN

-- Title:      RADLAN ROS
--             This Private MIB supports the ROS
-- Version:    7.30
-- Date:       22 Apr 2002
-- By:         Michael Indenbaum
-- E-mail:     michael@radlan.com
--
IMPORTS
    IpAddress                                       FROM SNMPv2-SMI
    InterfaceIndexOrZero, InterfaceIndex            FROM IF-MIB
    PortList                                        FROM Q-BRIDGE-MIB
    rlBroadcom                                      FROM RADLAN-MIB
    TEXTUAL-CONVENTION, TruthValue, RowStatus,
    DisplayString                                   FROM SNMPv2-TC;

rlBcmMibVersion OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "MIB's version, the current version is 1."
    ::= { rlBroadcom 1 }

    ---
    -- rlPolicySimpleBcmMib / Broadcom simple MIB
    ---
rlPolicySimpleBcmMib OBJECT IDENTIFIER  ::= { rlBroadcom 2 }

RlPolicySimpleBcmMibProfileType ::= TEXTUAL-CONVENTION
        STATUS  current
        DESCRIPTION
            "Specifies one of 3 services the device can support"
        SYNTAX  INTEGER {
            bandwidthGuarantee(1),
            minDelay(2),
            bestEffort(3)
      }


rlPolicySimpleBcmMibVersion     OBJECT-TYPE
          SYNTAX  INTEGER
          ACCESS  read-only
          STATUS  mandatory
          DESCRIPTION
              "MIB's version, the current version is 1."
          ::= { rlPolicySimpleBcmMib 1 }

rlPolicySimpleBcmMibReservedBW OBJECT-TYPE
            SYNTAX  INTEGER(0..100)
            ACCESS  read-write
            STATUS  mandatory
            DESCRIPTION
                "Specifies reserved bandwidth in a percents of a port's one
                 for rules with the Best Effort profile."
            DEFVAL {5}
            ::= { rlPolicySimpleBcmMib 2 }

rlPolicySimpleBcmMibPolicyEnable OBJECT-TYPE
            SYNTAX INTEGER {
                enabled(1),
                disabled(2)
            }
            ACCESS read-write
            STATUS mandatory
            DESCRIPTION
                "Enables or disables the policy feature "
            DEFVAL{ disabled }
            ::= { rlPolicySimpleBcmMib 3 }


    --
    -- rlPolicySimpleBcmMibProfileTable
    --
    rlPolicySimpleBcmMibProfileTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF RlPolicySimpleBcmMibProfileEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
            "The table defines all the profiles."
        ::= { rlPolicySimpleBcmMib 4 }

    rlPolicySimpleBcmMibProfileEntry OBJECT-TYPE
        SYNTAX  RlPolicySimpleBcmMibProfileEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
            "The entry define one profile."
        INDEX  { rlPolicySimpleBcmMibIndex }
        ::= { rlPolicySimpleBcmMibProfileTable 1 }

    RlPolicySimpleBcmMibProfileEntry ::= SEQUENCE  {
        rlPolicySimpleBcmMibIndex           INTEGER,
        rlPolicySimpleBcmMibDescription     DisplayString,
        rlPolicySimpleBcmMibProfileType     RlPolicySimpleBcmMibProfileType,
        rlPolicySimpleBcmMibRate            INTEGER,
        rlPolicySimpleBcmMibBurstSize       INTEGER,
        rlPolicySimpleBcmMibChangeTosOrDscp TruthValue,
        rlPolicySimpleBcmMibNewTosOrDscp    INTEGER,
        rlPolicySimpleBcmMibStatus          RowStatus
    }

    rlPolicySimpleBcmMibIndex OBJECT-TYPE
        SYNTAX  INTEGER(1..1048576)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
            "This enumerates the table entry."
        ::= { rlPolicySimpleBcmMibProfileEntry 1 }

    rlPolicySimpleBcmMibDescription OBJECT-TYPE
        SYNTAX  DisplayString(SIZE(0..40))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "Informational text given by the user to describe the profile."
        DEFVAL{""}
        ::= { rlPolicySimpleBcmMibProfileEntry 2 }

    rlPolicySimpleBcmMibProfileType OBJECT-TYPE
        SYNTAX  RlPolicySimpleBcmMibProfileType
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "Specifies a profile type."
        ::= { rlPolicySimpleBcmMibProfileEntry 3 }

    rlPolicySimpleBcmMibRate OBJECT-TYPE
        SYNTAX  INTEGER(0..2147483647)
--        UNITS   "kbps"
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "The rate in kilobytes/second for the specified profile,
             or in the case of minDelay per session profile type the rate will
             indicate the rate per individual session"
        ::= { rlPolicySimpleBcmMibProfileEntry 4 }

    rlPolicySimpleBcmMibBurstSize OBJECT-TYPE
        SYNTAX  INTEGER(0..2147483647)
--        UNITS   "bytes"
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "The burst size parameter.  A value of 0 means that
             the device should choose the Burst Size
             that is most suitable for the profile."
         DEFVAL { 0 }
         ::= { rlPolicySimpleBcmMibProfileEntry 5 }

    rlPolicySimpleBcmMibChangeTosOrDscp OBJECT-TYPE
        SYNTAX  TruthValue
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "Indicates whether the TOS or DSCP should be remarked with
             a new value"
        DEFVAL { false }
        ::= { rlPolicySimpleBcmMibProfileEntry 6 }

    rlPolicySimpleBcmMibNewTosOrDscp OBJECT-TYPE
        SYNTAX  INTEGER (0..63)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "Indicates the new value for the TOS or DSCP. Relevant only if
            rlPolicySimpleBcmMibChangeTosOrDscp is true."
        DEFVAL { 0 }
        ::= { rlPolicySimpleBcmMibProfileEntry 7 }

    rlPolicySimpleBcmMibStatus OBJECT-TYPE
        SYNTAX  RowStatus
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "The status of a table entry.
             It is used to delete an entry from this table."
        ::= { rlPolicySimpleBcmMibProfileEntry 8 }

--
-- rlPolicySimpleBcmMibRulesTable
--

rlPolicySimpleBcmMibRulesTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF RlPolicySimpleBcmMibRulesEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "This table contains the policy rules defined by the user. The order
        of the entries in the table is important, since the first rule that
        applies to the incoming packet will be acted upon, ignoring any
        further rules that may apply as well."
    ::= { rlPolicySimpleBcmMib 5 }

rlPolicySimpleBcmMibRulesEntry OBJECT-TYPE
    SYNTAX  RlPolicySimpleBcmMibRulesEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "This entry defines one policy rule."
    INDEX  {  rlPolicySimpleBcmMibRulesIndex }
    ::= { rlPolicySimpleBcmMibRulesTable 1 }


RlPolicySimpleBcmMibRulesEntry ::= SEQUENCE  {
    rlPolicySimpleBcmMibRulesIndex                INTEGER,
    rlPolicySimpleBcmMibRulesDescription          DisplayString,
    rlPolicySimpleBcmMibRulesDstMac               OCTET STRING,
    rlPolicySimpleBcmMibRulesSrcMac               OCTET STRING,
    rlPolicySimpleBcmMibRulesVpt                  INTEGER,
    rlPolicySimpleBcmMibRulesVid                  INTEGER,
    rlPolicySimpleBcmMibRulesEthType              INTEGER,
    rlPolicySimpleBcmMibRulesTosOrDscp            INTEGER,
    rlPolicySimpleBcmMibRulesProtocol             INTEGER,
    rlPolicySimpleBcmMibRulesSrcIp                IpAddress,
    rlPolicySimpleBcmMibRulesSrcIpMask            INTEGER,
    rlPolicySimpleBcmMibRulesDstIp                IpAddress,
    rlPolicySimpleBcmMibRulesDstIpMask            INTEGER,
    rlPolicySimpleBcmMibRulesSrcPort              INTEGER,
    rlPolicySimpleBcmMibRulesDstPort              INTEGER,
    rlPolicySimpleBcmMibRulesInIfIndexList        PortList,
    rlPolicySimpleBcmMibRulesOutIfIndexList       PortList,
    rlPolicySimpleBcmMibRulesAction               INTEGER,
    rlPolicySimpleBcmMibRulesProfilePointer       INTEGER,
    rlPolicySimpleBcmMibRulesBitsUsed                   OCTET STRING,
    rlPolicySimpleBcmMibRulesStatus               RowStatus
}


rlPolicySimpleBcmMibRulesIndex OBJECT-TYPE
    SYNTAX  INTEGER(1..1048576)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "This enumerates the table. The user should assign indices in such a
        way that there will be a gap big enough between one rule and the next
        to allow insertion of additional rules in between (a gap of 1000 is
        recommended). "
    ::= { rlPolicySimpleBcmMibRulesEntry 1 }

rlPolicySimpleBcmMibRulesDescription OBJECT-TYPE
    SYNTAX  DisplayString(SIZE(0..40))
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Informational text given by the user to describe the rule."
    DEFVAL{""}
    ::= { rlPolicySimpleBcmMibRulesEntry 2 }

rlPolicySimpleBcmMibRulesDstMac OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(0..6))
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the Dst mac to compare"
    DEFVAL { "" }
    ::= { rlPolicySimpleBcmMibRulesEntry 3 }

rlPolicySimpleBcmMibRulesSrcMac OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(0..6))
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the source mac to compare"
    DEFVAL { "" }
    ::= { rlPolicySimpleBcmMibRulesEntry 4 }


rlPolicySimpleBcmMibRulesVpt OBJECT-TYPE
    SYNTAX  INTEGER(0..7)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the Vlan priority tag to compare"
    DEFVAL { 0 }
    ::= { rlPolicySimpleBcmMibRulesEntry 5 }

rlPolicySimpleBcmMibRulesVid OBJECT-TYPE
    SYNTAX  INTEGER(0..4095)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the vlanId to compare"
    DEFVAL { 0 }
    ::= { rlPolicySimpleBcmMibRulesEntry 6 }


rlPolicySimpleBcmMibRulesEthType OBJECT-TYPE
    SYNTAX  INTEGER(0..65535)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the Ethernet type of the packet. 0 means that this field
        is not used"
    DEFVAL { 0 }
    ::= { rlPolicySimpleBcmMibRulesEntry 7 }


rlPolicySimpleBcmMibRulesTosOrDscp OBJECT-TYPE
    SYNTAX  INTEGER(0..255)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicates the tos or dscp to compare"
    DEFVAL { 0 }
    ::= { rlPolicySimpleBcmMibRulesEntry 8 }

rlPolicySimpleBcmMibRulesProtocol OBJECT-TYPE
    SYNTAX  INTEGER(0..255)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicates the protocol to compare"
    DEFVAL { 0 }
    ::= { rlPolicySimpleBcmMibRulesEntry 9 }

rlPolicySimpleBcmMibRulesSrcIp OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the srcIp to compare"
    DEFVAL {'00000000'H}
    ::= { rlPolicySimpleBcmMibRulesEntry 10 }

rlPolicySimpleBcmMibRulesSrcIpMask OBJECT-TYPE
    SYNTAX  INTEGER (0..32)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicates the number of most significant bits of the Ip Address
        that are used in specifying IP source addresses in classifiers."
    DEFVAL { 0 }
    ::= {  rlPolicySimpleBcmMibRulesEntry 11 }

rlPolicySimpleBcmMibRulesDstIp OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the DstIp to compare"
    DEFVAL {'00000000'H}
    ::= { rlPolicySimpleBcmMibRulesEntry 12 }

rlPolicySimpleBcmMibRulesDstIpMask OBJECT-TYPE
    SYNTAX  INTEGER (0..32)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicates the number of most significant bits of the Ip Address
        that are used in specifying IP destination addresses in classifiers."
    DEFVAL { 0 }
    ::= {  rlPolicySimpleBcmMibRulesEntry 13 }

rlPolicySimpleBcmMibRulesSrcPort OBJECT-TYPE
    SYNTAX  INTEGER(0..65535)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the Src port to compare"
    DEFVAL { 0 }
    ::= { rlPolicySimpleBcmMibRulesEntry 14 }

rlPolicySimpleBcmMibRulesDstPort OBJECT-TYPE
    SYNTAX  INTEGER(0..65535)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the Src port to compare"
    DEFVAL { 0 }
    ::= { rlPolicySimpleBcmMibRulesEntry 15 }

rlPolicySimpleBcmMibRulesInIfIndexList OBJECT-TYPE
    SYNTAX  PortList
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicates the list of input ports to which this rule applies."
    ::= { rlPolicySimpleBcmMibRulesEntry 16 }

rlPolicySimpleBcmMibRulesOutIfIndexList OBJECT-TYPE
    SYNTAX  PortList
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicates the list of output ports to on which bandwidth should be
         allocated for this rule."
    ::= { rlPolicySimpleBcmMibRulesEntry 17 }


rlPolicySimpleBcmMibRulesAction OBJECT-TYPE
    SYNTAX  INTEGER {
            block(1),
            blockAndTrap(2),
            permitAndTrap(3),
            permit(4)
    }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicates the action to be performed if there is a match with the rule."
    DEFVAL { permit }
    ::= { rlPolicySimpleBcmMibRulesEntry 18 }

rlPolicySimpleBcmMibRulesProfilePointer OBJECT-TYPE
    SYNTAX  INTEGER(0..2147483647)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicates the profile attached to the rule. The
        value is the index in the profile table of the attached profile.
        Value 0 means that no profile is attached to the rule and is valid only
        in case of action block."
    DEFVAL { 0 }
    ::= { rlPolicySimpleBcmMibRulesEntry 19 }

rlPolicySimpleBcmMibRulesBitsUsed OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(1))
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "a bit mask that indicates the the used fields for the entry:
         (the implemention is identical to BITS implementation,from MSB to LSB)
          ----------
          |87654321|
          ----------
          8 - Vpt
          7 - Vid
          6 - tosOrDscp
          5 - Protocol
          4 - SrcIp
          3 - DstIp
          2 - SrcIpPort
          1 - DstIpPort
          "
    DEFVAL {""}
    ::= { rlPolicySimpleBcmMibRulesEntry 20 }


rlPolicySimpleBcmMibRulesStatus OBJECT-TYPE
    SYNTAX  RowStatus
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "The status of a table entry.
         It is used to delete an entry from this table.
         notInService is used to disable an entry.
         notReady will be assigned by the device to indicate that the rule
         can not be active because some ports in the output ports list are not
         in a state allowing bandwidth allocation guarantee."
    ::= { rlPolicySimpleBcmMibRulesEntry 21 }


    ---
    -- rlBcmRateLimit  / Broadcom rate_limit  MIB
    ---



rlBcmRateLimit  OBJECT  IDENTIFIER  ::= { rlBroadcom 3 }

rlBcmPacketRateLimitBroadcstMulticastUnicastUnknown OBJECT-TYPE
    SYNTAX      INTEGER
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The rate limit in packets per second for Unicast Unknown, Multicast and Broadcasts Packets."
    ::= { rlBcmRateLimit  1 }

rlBcmPacketRateLimitMulticastEnable OBJECT-TYPE
    SYNTAX  INTEGER {
            enable(1),
            disable(2)
            }
--    SYNTAX      INTEGER { enable(1) ,disable(2) }
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The rate limit enable for Multicast Packets."
    DEFVAL { disable }
    ::= { rlBcmRateLimit  2 }

rlBcmPacketRateLimitBroadcstEnable OBJECT-TYPE
    SYNTAX      INTEGER { enable(1) ,disable(2) }
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The rate limit enable for Broadcast Packets."
    DEFVAL { enable }
    ::= { rlBcmRateLimit  3 }

rlBcmPacketRateLimitUnicastUnknownEnable OBJECT-TYPE
    SYNTAX      INTEGER { enable(1) ,disable(2) }
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The rate limit enable for Unicast Unknown Packets."
    DEFVAL { enable }
    ::= { rlBcmRateLimit  4 }


    ---
    -- rlBcmQoSRateLimit  MIB / Riverstone's QoS and Rate limit
    ---
rlBcmQoSRateLimit  OBJECT  IDENTIFIER  ::= { rlBroadcom 4 }

rlBcmQoSRateLimitIndexCounter OBJECT-TYPE
    SYNTAX      INTEGER
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "Counter to get entries's index in the rlBcmQoSRateLimitTable.
         This counter is incremented each time when a new profile created."

    ::= { rlBcmQoSRateLimit  1 }


RlBcmQoSRateLimitType ::= TEXTUAL-CONVENTION
        STATUS  current
        DESCRIPTION
            "Specifies type of rate-limit policy"
        SYNTAX  INTEGER {
            aggregate(1),
            flowAggregate(2),
            perFlow(3),
            multiField(4),
            inPort(5),
            outPort(6),
            qosIP(7),
            qosIPAcl(8)
      }

    --
    -- rlBcmQoSRateLimitTable
    --
    rlBcmQoSRateLimitTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF RlBcmQoSRateLimitEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
            "The table defines all the rate-limit and qos profiles."
        ::= { rlBcmQoSRateLimit 2 }

    rlBcmQoSRateLimitEntry OBJECT-TYPE
        SYNTAX  RlBcmQoSRateLimitEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
            "The entry define one profile."
        INDEX  { rlBcmQoSRateLimitType, rlBcmQoSRateLimitName, rlBcmQoSRateLimitIndex }
        ::= { rlBcmQoSRateLimitTable 1 }

    RlBcmQoSRateLimitEntry ::= SEQUENCE  {
        rlBcmQoSRateLimitType                  RlBcmQoSRateLimitType,
        rlBcmQoSRateLimitName                  DisplayString,
        rlBcmQoSRateLimitIndex                 INTEGER,
        rlBcmQoSRateLimitAclsNameOrFlow        OCTET STRING,
        rlBcmQoSRateLimitPortsOrInterfaces     DisplayString,
        rlBcmQoSRateLimitRatePriority          INTEGER,
        rlBcmQoSRateLimitBurstSizeTosMask      INTEGER,
        rlBcmQoSRateLimitDropOutProfile        TruthValue,
        rlBcmQoSRateLimitNewTos                INTEGER,
        rlBcmQoSRateLimitNewTosPrecedence      INTEGER,
        rlBcmQoSRateLimitStatus                RowStatus
    }

    rlBcmQoSRateLimitType OBJECT-TYPE
        SYNTAX  RlBcmQoSRateLimitType
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "Specifies a profile's type."
        ::= { rlBcmQoSRateLimitEntry 1 }

    rlBcmQoSRateLimitName OBJECT-TYPE
        SYNTAX  DisplayString(SIZE(0..40))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "Name of a  profile."
        ::= { rlBcmQoSRateLimitEntry 2 }

    rlBcmQoSRateLimitIndex OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "Unique index for this profile. This index is used
             to have several profiles with same name."
        ::= { rlBcmQoSRateLimitEntry 3 }

    rlBcmQoSRateLimitAclsNameOrFlow OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(0..100))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "This is a ACL name's list or codded IP flow
            for multiField and qosIP profiles."
        DEFVAL { "" }
        ::= { rlBcmQoSRateLimitEntry 4 }

    rlBcmQoSRateLimitPortsOrInterfaces OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..100))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "This is port's list or ip interafce name's list."
        DEFVAL { "" }
        ::= { rlBcmQoSRateLimitEntry 5 }

    rlBcmQoSRateLimitRatePriority OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "The rate in for the rate-limit profile or priority for qos one."
        DEFVAL { 0 }
        ::= { rlBcmQoSRateLimitEntry 6 }

    rlBcmQoSRateLimitBurstSizeTosMask OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "The burst size parameter in a bytes for rate-limit profiles
                and TOS mask for qos profiles."
         DEFVAL { 0 }
         ::= { rlBcmQoSRateLimitEntry 7 }

    rlBcmQoSRateLimitDropOutProfile OBJECT-TYPE
        SYNTAX  TruthValue
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "Indicates whether the OUT profile packets will be droped or no."
        DEFVAL { false }
        ::= { rlBcmQoSRateLimitEntry 8 }

    rlBcmQoSRateLimitNewTos OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "Indicates the new value for the TOS of packets.
             Value > 63 means not change ToS."
        DEFVAL { 64 }
        ::= { rlBcmQoSRateLimitEntry 9 }

    rlBcmQoSRateLimitNewTosPrecedence OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "Indicates the new value for the TOS precedence.
            Value > 15 means not change ToS precedence."
        DEFVAL { 16 }
        ::= { rlBcmQoSRateLimitEntry 10 }

    rlBcmQoSRateLimitStatus OBJECT-TYPE
        SYNTAX  RowStatus
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "The status of a table entry.
             It is used to delete an entry from this table."
        ::= { rlBcmQoSRateLimitEntry 11 }


 ---
 -- rlBcmQoSRateLimitAclApplliedTable
 ---

    rlBcmQoSRateLimitAclApplliedTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF RlBcmQoSRateLimitAclApplliedEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
            "The table defines ACLs which are applied to profiles."
        ::= { rlBcmQoSRateLimit 3 }

    rlBcmQoSRateLimitAclApplliedEntry OBJECT-TYPE
        SYNTAX  RlBcmQoSRateLimitAclApplliedEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
            "The entry define one profile."
        INDEX  { rlBcmQoSRateLimitAclName, rlBcmQoSRateLimitAclApplliedIfIndex }
        ::= { rlBcmQoSRateLimitAclApplliedTable 1 }

    RlBcmQoSRateLimitAclApplliedEntry ::= SEQUENCE  {
        rlBcmQoSRateLimitAclName                        DisplayString,
        rlBcmQoSRateLimitAclApplliedIfIndex             INTEGER,
        rlBcmQoSRateLimitAclApplliedType                INTEGER,
        rlBcmQoSRateLimitAclApplliedStatus              RowStatus
    }

    rlBcmQoSRateLimitAclName OBJECT-TYPE
        SYNTAX  DisplayString(SIZE(0..40))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "Name of a ACL which defines flow."
        ::= { rlBcmQoSRateLimitAclApplliedEntry 1 }

    rlBcmQoSRateLimitAclApplliedIfIndex OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "Unique index which is point to a profile."
        ::= { rlBcmQoSRateLimitAclApplliedEntry 2 }

    rlBcmQoSRateLimitAclApplliedType OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "This field defines type of application -
            qos or rate-limit or both."
        ::= { rlBcmQoSRateLimitAclApplliedEntry 3 }

    rlBcmQoSRateLimitAclApplliedStatus OBJECT-TYPE
        SYNTAX  RowStatus
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "The status of a table entry.
             It is used to delete an entry from this table."
        ::= { rlBcmQoSRateLimitAclApplliedEntry 4 }

--
-- rlBcmQoSRateLimitIPflowTable
--

rlBcmQoSRateLimitIPflowTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF RlBcmQoSRateLimitIPflowEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "This table contains IP flows defined by the user.
         An entries of this table are used for QoS and Rate-limit
         profiles."
    ::= { rlBcmQoSRateLimit 4 }

rlBcmQoSRateLimitIPflowEntry OBJECT-TYPE
    SYNTAX  RlBcmQoSRateLimitIPflowEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "This entry defines one policy rule."
    INDEX  {  rlBcmQoSRateLimitIPflowTos , rlBcmQoSRateLimitIPflowTosMask,
            rlBcmQoSRateLimitIPflowProtocol, rlBcmQoSRateLimitIPflowSrcIp,
            rlBcmQoSRateLimitIPflowSrcIpMask, rlBcmQoSRateLimitIPflowDstIp,
            rlBcmQoSRateLimitIPflowDstIpMask, rlBcmQoSRateLimitIPflowSrcPort,
            rlBcmQoSRateLimitIPflowDstPort, rlBcmQoSRateLimitInIfindex,
            rlBcmQoSRateLimitOutIfindex}
    ::= { rlBcmQoSRateLimitIPflowTable 1 }


RlBcmQoSRateLimitIPflowEntry ::= SEQUENCE  {
    rlBcmQoSRateLimitIPflowTos                      INTEGER,
    rlBcmQoSRateLimitIPflowTosMask                  INTEGER,
    rlBcmQoSRateLimitIPflowProtocol                 INTEGER,
    rlBcmQoSRateLimitIPflowSrcIp                    IpAddress,
    rlBcmQoSRateLimitIPflowSrcIpMask                IpAddress,
    rlBcmQoSRateLimitIPflowDstIp                    IpAddress,
    rlBcmQoSRateLimitIPflowDstIpMask                IpAddress,
    rlBcmQoSRateLimitIPflowSrcPort                  INTEGER,
    rlBcmQoSRateLimitIPflowDstPort                  INTEGER,
    rlBcmQoSRateLimitInIfindex                      INTEGER,
    rlBcmQoSRateLimitOutIfindex                     INTEGER,
    rlBcmQoSRateLimitIPFlowType                     INTEGER,
    rlBcmQoSRateLimitIPFlowRule                     INTEGER,
    rlBcmQoSRateLimitIPflowStatus                   RowStatus
}


rlBcmQoSRateLimitIPflowTos OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Tos byte of a flow. Value must be in range 0-255.
         Value > 256 means any tos"
    ::= { rlBcmQoSRateLimitIPflowEntry 1 }

rlBcmQoSRateLimitIPflowTosMask OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Mask which is applied to TOS byte of a flow.
         Value must be in range 0-255.
         Value > 256 means any tos"
    ::= { rlBcmQoSRateLimitIPflowEntry 2 }

rlBcmQoSRateLimitIPflowProtocol OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Protocol of a IP flow.Value must be in range 0-255.
         Value > 256 means any IP protocol"
    ::= { rlBcmQoSRateLimitIPflowEntry 3 }

rlBcmQoSRateLimitIPflowSrcIp OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the srcIp of a flow. 0.0.0.0 means any source address."
    ::= { rlBcmQoSRateLimitIPflowEntry 4 }

rlBcmQoSRateLimitIPflowSrcIpMask OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicates the number of most significant bits of the Ip Address
        that are used in specifying IP source addresses in classifiers."
    ::= {  rlBcmQoSRateLimitIPflowEntry 5 }

rlBcmQoSRateLimitIPflowDstIp OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the DstIp to compare"
    ::= { rlBcmQoSRateLimitIPflowEntry 6 }

rlBcmQoSRateLimitIPflowDstIpMask OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicates the number of most significant bits of the Ip Address
        that are used in specifying IP destination addresses in classifiers."
    ::= {  rlBcmQoSRateLimitIPflowEntry 7 }

rlBcmQoSRateLimitIPflowSrcPort OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the Src port to compare. Value must be in range 0-65535.
         Value > 65536 means any src port"
    ::= { rlBcmQoSRateLimitIPflowEntry 8 }

rlBcmQoSRateLimitIPflowDstPort OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the Src port to compare.  Value must be in range 0-65535.
         Value > 65536 means any src port."
    ::= { rlBcmQoSRateLimitIPflowEntry 9 }

rlBcmQoSRateLimitInIfindex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "This is input IfIndex for flow. "
    ::= { rlBcmQoSRateLimitIPflowEntry 10 }

rlBcmQoSRateLimitOutIfindex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "This is output IfIndex for flow. "
    ::= { rlBcmQoSRateLimitIPflowEntry 11 }

rlBcmQoSRateLimitIPFlowType OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "This is type of flow. "
    DEFVAL { 0 }
    ::= { rlBcmQoSRateLimitIPflowEntry 12 }

rlBcmQoSRateLimitIPFlowRule OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "This is rule's index of flow. "
    DEFVAL { 0 }
    ::= { rlBcmQoSRateLimitIPflowEntry 13 }

rlBcmQoSRateLimitIPflowStatus OBJECT-TYPE
    SYNTAX  RowStatus
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "The status of a table's entry.
         It is used to delete an entry from this table."
    ::= { rlBcmQoSRateLimitIPflowEntry 14 }

---
--                QoS precedence map
---

rlBcmQoSRateLimitQoSprecedenceMap OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(7..7))
        ACCESS  read-write
        STATUS  mandatory
    DESCRIPTION
        " Each octet means precedence for IP flow fields:
          Octet 0 - src ip adr
          Octet 1 - dest ip adr
          Octet 2 - src port
          Octet 3 - dest port
          Octet 4 - tos byte
          Octet 5 - protocol
          Octet 6 - interface
          This map is used to sort Rules to accord matching rules by this map."
    ::= { rlBcmQoSRateLimit  5 }

--
--            rlTosOverwriteMapMib
--

rlTosOverwriteMapMib   OBJECT IDENTIFIER  ::= { rlBroadcom 5 }


rlTosOverwriteMapTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF RlTosOverwriteMapEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "This table hold information the over priority maps"
    ::= { rlTosOverwriteMapMib 1 }

rlTosOverwriteMapEntry OBJECT-TYPE
    SYNTAX  RlTosOverwriteMapEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "The row definition for this table."
    INDEX { rlTosOverwriteMapName,rlTosOverwriteMapRange  }
    ::= { rlTosOverwriteMapTable 1 }

RlTosOverwriteMapEntry ::= SEQUENCE {
    rlTosOverwriteMapName     DisplayString,
    rlTosOverwriteMapRange    INTEGER,
    rlTosOverwriteMapMapping  OCTET STRING,
    rlTosOverwriteMapPortList PortList,
    rlTosOverwriteMapStatus   RowStatus
}

rlTosOverwriteMapName OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (1..25))
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The map name"
    ::=  { rlTosOverwriteMapEntry 1 }

rlTosOverwriteMapRange OBJECT-TYPE
    SYNTAX  INTEGER { bits(7), tos(63), byte(255) }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        " value of the byte in the map"
    ::= { rlTosOverwriteMapEntry 2 }

rlTosOverwriteMapMapping OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE (8))
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "The map holding the queue"
    ::=  { rlTosOverwriteMapEntry 3 }

rlTosOverwriteMapPortList OBJECT-TYPE
    SYNTAX      PortList
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "the ports that the map, is applied on "
    ::= { rlTosOverwriteMapEntry 4 }

rlTosOverwriteMapStatus OBJECT-TYPE
    SYNTAX  RowStatus
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "The status of the  table entry. It's used to delete an entry"
    ::= { rlTosOverwriteMapEntry 5 }


    ---
    -- rlBcmACLMib / Access Control List MIB for JBOS system
    ---
rlBcmACLMib OBJECT IDENTIFIER  ::= { rlBroadcom 6 }

rlBcmACLMibVersion OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "ACL MIB's version, the current version is 1."
    ::= { rlBcmACLMib 1 }

rlBcmACLMaxNumberOfEntries OBJECT-TYPE
    SYNTAX      INTEGER
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "The variable defines maximal number of entries in
         a particular ACL."
    ::= { rlBcmACLMib 2 }

    --
    -- ACL names table
    --
rlBcmACLNamesTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF RlBcmACLNamesEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "This table stores names and IDs of ACLs. This table
         is used to convert ACL name to a ACL ID. ACL ID is
         used in all other tables to identify a particular ACL.
         The ACL ID is set to ACL name automatically by SW."
    ::= { rlBcmACLMib 3 }

rlBcmACLNamesEntry OBJECT-TYPE
    SYNTAX  RlBcmACLNamesEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "The row definition for this table."
    INDEX { rlBcmACLNamesName  }
    ::= { rlBcmACLNamesTable 1 }

RlBcmACLNamesEntry ::= SEQUENCE {
    rlBcmACLNamesName           DisplayString,
    rlBcmACLNamesID             INTEGER,
    rlBcmACLNamesStatus         RowStatus
}

rlBcmACLNamesName OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (1..25))
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The ACL name. User identifies ACL by it's unique name."
    ::=  { rlBcmACLNamesEntry 1 }

rlBcmACLNamesID OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "The ID of ACL. It is unique value for each ACL name.
         The ID is defined by SW during new entry creation."
    ::=  { rlBcmACLNamesEntry 2 }

rlBcmACLNamesStatus OBJECT-TYPE
    SYNTAX  RowStatus
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "The status of the  table entry. It's used to delete an entry.
         Only two status are aceptable: CreateAndGo, Destroy. All other
         values cause error."
    ::=  { rlBcmACLNamesEntry 3 }

    --
    -- ACL table
    --
rlBcmACLTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF RlBcmACLEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "This table defines entries in ACLs."
    ::= { rlBcmACLMib 4 }

rlBcmACLEntry OBJECT-TYPE
    SYNTAX  RlBcmACLEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "The row definition for this table."
    INDEX { rlBcmAclID, rlBcmAclRowIndex }
    ::= { rlBcmACLTable 1 }

RlBcmACLEntry ::= SEQUENCE {
    rlBcmAclID                      INTEGER,
    rlBcmAclRowIndex                INTEGER,
    rlBcmAclAction                  INTEGER,
    rlBcmAclIPflags                 INTEGER,
    rlBcmAclIPflagsMask             INTEGER,
    rlBcmAclIPfragOffset            INTEGER,
    rlBcmAclIPfragOffsetMask        INTEGER,
    rlBcmAclIPprotocol              INTEGER,
    rlBcmAclSrcIp                   IpAddress,
    rlBcmAclSrcIpMask               IpAddress,
    rlBcmAclDstIp                   IpAddress,
    rlBcmAclDstIpMask               IpAddress,
    rlBcmAclSrcL4Port               INTEGER,
    rlBcmAclDstL4Port               INTEGER,
    rlBcmAclTCPbits                 INTEGER,
    rlBcmAclTCPbitsMask             INTEGER,
    rlBcmAclStatus                  RowStatus
}

rlBcmAclID OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "The ID of ACL. It is unique value for each ACL name.
         The ID must accord to one in the ACL name table."
    ::=  { rlBcmACLEntry 1 }

rlBcmAclRowIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Unique identification of a particular entry in
         an ACL. This index is equal to row number in the
         acl lcli commands. The value of this field starts
         from 1 up to rlBcmACLMaxNumberOfEntries.
         Each entry defines classication rule for IP packet.
         This index defines order of ACL rules resolving.
         The classification criteria of a rule with a lowest
         index compared with packets contex first. If
         matching not occured than rule with next index is
         taken for comparing. And so on up to firts match.
         The resulting actions are defined by actions of
         a first matching rule."
    ::=  { rlBcmACLEntry 2 }

rlBcmAclAction OBJECT-TYPE
    SYNTAX      INTEGER {
           permit(1),       -- Packet may be forward
           permitAndLog(2), -- Packet may be forward,
                            -- matching event must be logged
           deny(3),         -- Packet must be dropped
           denyAndLog(4),   -- Packet must be dropped,
                            -- matching event must be logged
           logAndContinue(5)   -- Matching event must be logged,
                                -- next rules are evaluated
    }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "The permissions/restrictions given to this entry."
    ::= { rlBcmACLEntry 3 }

rlBcmAclIPflags OBJECT-TYPE
    SYNTAX  INTEGER(0..7)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate 3-bits IP header flags to compare."
    DEFVAL { 0 }
    ::= { rlBcmACLEntry 4 }

rlBcmAclIPflagsMask OBJECT-TYPE
    SYNTAX  INTEGER(0..7)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate 3-bits mask for IP header flags to compare.
         Value 0 means Any IP flags."
    DEFVAL { 0 }
    ::= { rlBcmACLEntry 5 }

rlBcmAclIPfragOffset OBJECT-TYPE
    SYNTAX  INTEGER(0..8191)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate 13-bits IP header offset to compare."
    DEFVAL { 0 }
    ::= { rlBcmACLEntry 6 }

rlBcmAclIPfragOffsetMask OBJECT-TYPE
    SYNTAX  INTEGER(0..8191)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate 13-bits mask for IP header offset to compare.
         Value 0 means Any IP offset."
    DEFVAL { 0 }
    ::= { rlBcmACLEntry 7 }

rlBcmAclIPprotocol OBJECT-TYPE
    SYNTAX  INTEGER(0..256)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate IP protocol to compare.
         Value 256 means Any ip protocol."
    DEFVAL { 256 }
    ::= { rlBcmACLEntry 8 }

rlBcmAclSrcIp OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the srcIp to compare."
    DEFVAL {'00000000'H}
    ::= { rlBcmACLEntry 9 }

rlBcmAclSrcIpMask OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicates the number of most significant bits of the Ip Address
        that are used in specifying IP source addresses in classifiers.
        Value 0.0.0.0 means Any source IP address."
    DEFVAL {'00000000'H}
    ::= {  rlBcmACLEntry 10 }

rlBcmAclDstIp OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the DstIp to compare."
    DEFVAL {'00000000'H}
    ::= { rlBcmACLEntry 11 }

rlBcmAclDstIpMask OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicates the number of most significant bits of the Ip Address
        that are used in specifying IP destination addresses in classifiers.
         Value 0.0.0.0 means Any destination IP address."
    DEFVAL {'00000000'H}
    ::= {  rlBcmACLEntry 12 }

rlBcmAclSrcL4Port OBJECT-TYPE
    SYNTAX  INTEGER(0..65536)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the Src port to compare.
         Value 65536 means Any source port."
    DEFVAL { 65536 }
    ::= { rlBcmACLEntry 13 }

rlBcmAclDstL4Port OBJECT-TYPE
    SYNTAX  INTEGER(0..65536)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate the destination port to compare.
         Value 65536 means Any destination port."
    DEFVAL { 65536 }
    ::= { rlBcmACLEntry 14 }

rlBcmAclTCPbits OBJECT-TYPE
    SYNTAX  INTEGER(0..63)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate 6-bits TCP code bits to compare."
    DEFVAL { 0 }
    ::= { rlBcmACLEntry 15 }

rlBcmAclTCPbitsMask OBJECT-TYPE
    SYNTAX  INTEGER(0..63)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "Indicate 6-bits mask for TCP code bits to compare.
         Value 0 means Any TCP code bits."
    DEFVAL { 0 }
    ::= { rlBcmACLEntry 16 }

rlBcmAclStatus OBJECT-TYPE
    SYNTAX  RowStatus
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "The status of the  table entry. It's used to delete an entry.
         Only three statuses are aceptable: CreateAndGo to create,
         Active to update,Destroy to delete. All other values cause error."
    ::=  { rlBcmACLEntry 17 }


    --
    -- ACL ports table
    --
rlBcmACLPortsTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF RlBcmACLPortsEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "This table defines ports on which ACLs are applied."
    ::= { rlBcmACLMib 5 }

rlBcmACLPortsEntry OBJECT-TYPE
    SYNTAX  RlBcmACLPortsEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "The row definition for this table."
    INDEX { rlBcmAclPortsIfIndex, rlBcmAclPortsDirection }
    ::= { rlBcmACLPortsTable 1 }

RlBcmACLPortsEntry ::= SEQUENCE {
    rlBcmAclPortsIfIndex            INTEGER,
    rlBcmAclPortsDirection          INTEGER,
    rlBcmAclPortsAclID              INTEGER,
    rlBcmAclPortsStatus             RowStatus
}

rlBcmAclPortsIfIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "The ifIndex of port or trunk on which ACL is applyed."
    ::=  { rlBcmACLPortsEntry 1 }

rlBcmAclPortsDirection OBJECT-TYPE
    SYNTAX      INTEGER {
           ingress(1),  -- ACL is applyed on an ingress port
           egress(2),   -- ACL is applyed on an egress port
           both(3)      -- ACL is applyed on both ports
    }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "The direction of ACL applying."
    ::=  { rlBcmACLPortsEntry 2 }

rlBcmAclPortsAclID OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "The ID of ACL."
    ::=  { rlBcmACLPortsEntry 3 }

rlBcmAclPortsStatus OBJECT-TYPE
    SYNTAX  RowStatus
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "The status of the  table entry. It's used to delete an entry.
         Only three statuses are aceptable: CreateAndGo to create,
         Active to update,Destroy to delete. All other values cause error."
    ::=  { rlBcmACLPortsEntry 4 }

END
