librenms/librenms

View on GitHub
mibs/mni/MNI-PROTEUS-AMT-MIB

Summary

Maintainability
Test Coverage
-- Title:       MNI's MIB for Proteus Family (AMT, AMT-L, AMT-M, MX, MXD)
-- Part Number: 4600054-01
-- Version:     T
-- Date:        June 6, 2016
-- By:          Larry Fisher
--              Tim Behne
--              Brent McGaugh
--              Robert Gulde
--
--  This information is subject to change without notice, and should
--  not be construed as a commitment by Microwave Networks Incorporated
--  Microwave Networks Incorporated assumes no responsibility for any errors
--  Do not distribute without Microwave Networks Incorporated approval.
--  Copyright (C) 2003 - 2016 Microwave Networks Incorporated. 
--  All rights reserved.


MNI-PROTEUS-AMT-MIB DEFINITIONS ::= BEGIN

IMPORTS
    enterprises, Counter, TimeTicks, IpAddress
        FROM RFC1155-SMI
    TRAP-TYPE
        FROM RFC-1215
    OBJECT-TYPE
        FROM RFC-1212
    DisplayString
        FROM RFC1213-MIB
    RowStatus, TruthValue, DateAndTime, StorageType
        FROM SNMPv2-TC;


microwave-networks OBJECT IDENTIFIER ::=  { enterprises       3323 }

mnRegistrations OBJECT IDENTIFIER ::=       { microwave-networks  11 }
mnRegSysObjID OBJECT IDENTIFIER ::=           { mnRegistrations      1 }

mnRegSysProtAMT OBJECT IDENTIFIER ::=           { mnRegSysObjID        1 }
-- SysObjectID for the original Proteus AMT
mnRegSysProtAMTL OBJECT IDENTIFIER ::=          { mnRegSysObjID        2 }
-- SysObjectID for Proteus AMT L-Series
mnRegSysProtAMTM OBJECT IDENTIFIER ::=          { mnRegSysObjID        3 }
-- SysObjectID for Proteus AMT M-Series
mnRegSysProtMX OBJECT IDENTIFIER ::=            { mnRegSysObjID        4 }
-- SysObjectID for Proteus MX
mnRegSysProtMXD OBJECT IDENTIFIER ::=           { mnRegSysObjID        5 }
-- SysObjectID for Proteus MXD
mnRegSysProtHE32 OBJECT IDENTIFIER ::=          { mnRegSysObjID        6 }
-- SysObjectID for HE-32

mnModules OBJECT IDENTIFIER ::=               { mnRegistrations      2 }


mnCommon OBJECT IDENTIFIER ::=              { microwave-networks  12 }

mnProducts OBJECT IDENTIFIER ::=            { microwave-networks  13 }
mnProtAMTV1MIB OBJECT IDENTIFIER ::=          { mnProducts           1 }

mnPrFV2Notifications OBJECT IDENTIFIER ::=      { mnProtAMTV1MIB       0 }
mnPrStatusObjects OBJECT IDENTIFIER ::=         { mnProtAMTV1MIB       1 }
mnPrLinkStatusObjects OBJECT IDENTIFIER ::=       { mnPrStatusObjects    1 }
mnPrAlarmObjects OBJECT IDENTIFIER ::=          { mnProtAMTV1MIB       2 }
mnPrNotifyObjects OBJECT IDENTIFIER ::=         { mnProtAMTV1MIB       3 }
mnPrPerformanceObjects OBJECT IDENTIFIER ::=    { mnProtAMTV1MIB       4 }
mnPrControlObjects OBJECT IDENTIFIER ::=        { mnProtAMTV1MIB       5 }
mnPrConfigurationObjects OBJECT IDENTIFIER ::=  { mnProtAMTV1MIB       6 }
mnPrUtilityObjects OBJECT IDENTIFIER ::=        { mnProtAMTV1MIB       7 }
mnPrVlanObjects OBJECT IDENTIFIER ::=           { mnProtAMTV1MIB       8 }
mnPrSecurityObjects OBJECT IDENTIFIER ::=       { mnProtAMTV1MIB       9 }

mnCapabilities OBJECT IDENTIFIER ::=        { microwave-networks  14 }

mnExperimental OBJECT IDENTIFIER ::=        { microwave-networks  15 }





-------------------------------------------------------------------------------
-- Textual Conventions
-------------------------------------------------------------------------------

-- Textual Convention for the LIM Type
LIMType ::= INTEGER {
                 limNotInstalled(1),
                 lim2xE1(2),
                 lim4xE1(3),
                 lim8xE1(4),
                 lim16xE1(5),
                 lim1xE3(6),
                 limEth100(7),
                 limEth100SG(8),
                 limGigEth(9),
                 lim155Mb(10),
                 lim2xDS1(11),
                 lim4xDS1(12),
                 lim8xDS1(13),
                 lim16xDS1(14),
                 lim1xDS3(15),
                 lim12xDS1(16),
                 lim12xE1(17),
                 lim32xDS1(18),
                 lim32xE1(19),
                 lim2xE3(20),
                 lim2xDS3(21),
                 limUBus(22),
                 lim4xDS3(23),
                 lim4xE3(24),
                 lim32xDS1E1(25),
                 lim16xDS1E1(26),
                 lim3xE3(27),
                 lim3xDS3(28),
                 lim28xDS1(29),
                 lim21xE1(30),
                 lim28xE1(31),
                 lim32xSHARP(32),
                 limUBusNoGigE(33),
                 lim64xE1(34),
                 lim64xDS1(35),
                 lim96xE1(36),
                 lim96xDS1(37),
                 lim100xE1(38),
                 lim118xDS1(39),
                 lim120xDS1(40),
                 lim120xSHARP(41),
                 lim4DS328DS1(42),
                 lim8GigE32DS1(43),
                 lim8GigE32E1(44),
                 lim8GigE32DS1E1(45),
                 limOther(99)
               }
            
-- Textual Convention for the Modulation Type
ModulationType ::=  INTEGER {
                 modQPSK(2),
                 mod8PSK(3),
                 mod16QAM(4),
                 mod32QAM(5),
                 mod64QAM(6),
                 mod128QAM(7),
                 mod256QAM(8),
                 modQPSK12(18),
                 mod16TCM34(20),
                 mod64TCM56(22),
                 mod128TCM67(23),
                 mod256TCM78(24),
                 modQPSK34(34),
                 mod16TCM78(36),
                 mod32TCM910(37),
                 mod64TCM1112(38),
                 mod128TCM1314(39),
                 modOther(99)
               }


-- Textual Convention for the Severity as defined by the ITU
ITUSeverity ::= INTEGER {
                 cleared(1),
                 indeterminate(2),
                 critical(3),
                 major(4),
                 minor(5),
                 warning(6)
               }

-- Textual Convention for the Security Access Level
AccessLevel ::= INTEGER {
                 guest(2),
                 admin(6),
                 factory(10)
               }

-- Textual Convention for representing 64-bit integers (encoded in decimal as an ASCII string)
Display64 ::= DisplayString(SIZE (1..20))

-- Textual Convention for 100 BaseT Port Rate Limit
RateLimit   ::= INTEGER {
                 kbps128(128),
                 kbps256(256),
                 kbps512(512),
                 mbps1(1024),
                 mbps2(2048),
                 mbps4(4096),
                 mbps8(8192),
                 mbps16(16384),
                 mbps32(32768),
                 mbps64(65336),
                 mbps100(100000)
               }

-- Textual Convention for IF Bandwidth
--   AMT: 3.5MHz, 5MHz, 7MHz, 10MHz, 14MHz, 20MHz, 25MHz, 28MHz
--   ANSI AMT-L: 5MHz, 10MHz, 20MHz, 28MHz
--   ETSI AMT-L: 3.5MHz, 7MHz, 14MHz, 28MHz
--   AMT-M: 2.5MHz, 3.5MHz, 3.75MHz, 5MHz, 7MHz, 10MHz, 14MHz, 20MHz, 28MHz, 30MHz. 
--   Proteus MX: Same as AMT-M, plus 25Mhz, 40MHz, 50MHz, 56MHz.
IfBandwidth ::= INTEGER {
                 ifBoardNotInstalled(1),
                 ifBW3-5(2),
                 ifBW7(3),
                 ifBW14(4),
                 ifBW28(5),
                 ifBW5(6),
                 ifBW10(7),
                 ifBW20(8),
                 ifBW25(9),
                 ifBW2-5(10),
                 ifBW30(11),
                 ifBW3-75(12),
                 ifBW40(13),
                 ifBW50(14),
                 ifBW56(15),
                 ifBW60(16),
                 ifOther(99)
               }

-- Textual Convention for LAN Speed Settings
LanSpeed ::= INTEGER {
                 lanAutoNegotiate(1),
                 lan10BaseTHalf(2),
                 lan100BaseTHalf(3),
                 lan100BaseTFull(4),
                 lanPoweredDown(5),
                 lan10BaseTFull(6),
                 lan1000BaseTFull(7)
               }

-- Textual Convention for SHARP BER/Status
SHARPBERStatus ::= INTEGER {
                 berGT3Eminus3(1),
                 ber1Eminus3(2),
                 ber3Eminus4(3),
                 ber1Eminus4(4),
                 ber3Eminus5(5),
                 ber1Eminus5(6),
                 ber3Eminus6(7),
                 ber1Eminus6(8),
                 ber3Eminus7(9),
                 ber1Eminus7(10),
                 ber3Eminus8(11),
                 ber1Eminus8(12),
                 ber3Eminus9(13),
                 ber1Eminus9(14),
                 notReady(15),
                 noError(16),
                 notUsed(17),
                 ais(18),
                 oof(19),
                 los(20),
                 unknown(21)
               }
 
-- Textual Convention for SHARP BER Threshold
SHARPBERThresh ::= INTEGER {
                 ber1Eminus3(2),
                 ber1Eminus4(4),
                 ber1Eminus5(6),
                 ber1Eminus6(8),
                 ber1Eminus7(10),
                 ber1Eminus8(12),
                 ber1Eminus9(14),
                 notUsed(17)
               }
                
-------------------------------------------------------------------------------
-- Link Status Group
-------------------------------------------------------------------------------

mnPrLinkStatLinkUp OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "True if the radio link itself is up (passing
             data in both directions.)  Note that this can be true
             even if there are non-critical errors, or even
             if one or two radios have failed in a protected link."
    ::= { mnPrLinkStatusObjects  1 }

--mnPrLinkStatCurSeverity OBJECT-TYPE
--    SYNTAX  ITUSeverity
--    ACCESS  read-only
--    STATUS  mandatory
--    DESCRIPTION
--           "The maximum current alarm severity for any radio
--             within the link.  These are the standard values as
--             per ITU X.733.  The first release of the radio firmware
--             supports just cleared, major and minor. "
--    ::= { mnPrLinkStatusObjects  2 }

--mnPrLinkStatLatchSeverity OBJECT-TYPE
--    SYNTAX  ITUSeverity
--    ACCESS  read-only
--    STATUS  mandatory
--    DESCRIPTION
--           "The maximum alarm severity attained by any radio within the
--             link since latched alarms were last reset.  These are the
--             standard values as per ITU X.733.  The first release of
--             the radio firmware supports just cleared, major and minor."
--    ::= { mnPrLinkStatusObjects  3 }

--mnPrLinkStatControlOn OBJECT-TYPE
--    SYNTAX  TruthValue
--    ACCESS  read-only
--    STATUS  mandatory
--    DESCRIPTION
--           "True if there is a control (mute, loopback, BERT) on (in
--             the non-default, service-affecting state) in one or more of
--             the reachable radios in the Link."
--    ::= { mnPrLinkStatusObjects  4 }

--mnPrLinkStatLastChangeTime OBJECT-TYPE
--    SYNTAX  TimeTicks
--    ACCESS  read-only
--    STATUS  mandatory
--    DESCRIPTION
--           "The time the last significant system change occurred
--             in the reachable radios in the link.
--             The time is in centiseconds since agent radio was
--             last rebooted: i.e.: it the value of the agent's
--             SysUptime object at the time of the last significant
--             change.)
--             Significant system changes include the ones covered by
--             the mnPrRadStatLastAlarmChangeTime and
--             mnPrRadStatLastCCChangeTime, and also a change
--             of more than 1 dBm in RSL or TxPower, or a change in
--             the exponent of the last-second BER."
--    ::= { mnPrLinkStatusObjects  5 }

mnPrLinkStatReachable OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "A bitmapped object that reveals which of the
             radios in the link are 'reachable' from the agent
             (i.e.: which radios have bidirectional connectivity
             with the agent).  Bits (0=lsb) have the following
             meaning:
             0 (mask 1) = NE primary radio is reachable from agent
             1 (mask 2) = FE primary radio is reachable from agent
             2 (mask 4) = NE secondary radio  is reachable from agent
             4 (mask 8) = FE secondary radio   is reachable from agent"
    ::= { mnPrLinkStatusObjects  8 }

mnPrLinkStatAccessLevel OBJECT-TYPE
    SYNTAX  AccessLevel
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Indicates the security access level of the request that
             was used to retrieve this object.  Used by management
             software to determine what access level it has. "
    ::= { mnPrLinkStatusObjects  9 }

mnPrLinkStatLastErrorText OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Error text corresponding to last failure while attempting to
             complete a user's request to change a configuration or control
             object.  Every radio's agent has its own instance of
             mnPrLinkStatLastErrorText.   Even if the object that was not
             changed is on another radio, the associated error text is
             stored on the radio where the requesting agent is.  This
             object will be cleared (set to a null string) to help insure
             that stale messages are not retrieved. "
    ::= { mnPrLinkStatusObjects  10 }

mnPrLinkStatLocalRadioIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..64)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The radio index for the radio processing the SNMP request.
             When accessing an ifEntry,
             using this value as the ifIndex yields the
             conceptual row of the inter-radio communication
             interface for this radio.  By convention,
             specific values of the mnPrLinkStatLocalRadioIndex object are
             assigned as follows:

             1 = NE primary radio
             2 = FE primary radio (never returned as local index)
             3 = NE secondary radio
             4 = FE secondary radio (never returned as local index)

             The assignment of the mnPrLinkStatLocalRadioIndex value
             persists across reinitializations of the radio."
    ::= { mnPrLinkStatusObjects  11 }



-------------------------------------------------------------------------------
-- Radio Status Table
-------------------------------------------------------------------------------

mnPrRadStatTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrRadStatEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing system status information for
             each radio in the link."
    ::= { mnPrStatusObjects  2 }

mnPrRadStatEntry OBJECT-TYPE
    SYNTAX  MnPrRadStatEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of system status information for a single
             radio within the link."
    INDEX   { mnRadioIndex }
    ::= { mnPrRadStatTable  1 }

MnPrRadStatEntry ::=
    SEQUENCE {
        mnRadioIndex
            INTEGER,

        mnPrRadStatCurSeverity
            INTEGER,

        mnPrRadStatLatchSeverity
            INTEGER,

        mnPrRadStatMinorAlarm
            TruthValue,

        mnPrRadStatControlOn
            TruthValue,

        mnPrRadStatCurAlarmList
            OCTET STRING,

        mnPrRadStatUptime
            INTEGER,

        mnPrRadStatLastAlarmChangeTime
            TimeTicks,

        mnPrRadStatLastCCChangeTime
            TimeTicks,

        mnPrRadStatLatchedTimeString
            DisplayString,

-- Static Inventory-like information
        mnPrRadStatImageBooted
            INTEGER,

        mnPrRadStatIFBoardType
            IfBandwidth,

        mnPrRadStatPSVoltage
            INTEGER,

        mnPrRadStatODUFreqBand
            INTEGER,

        mnPrRadStatODUSubBand
            INTEGER,

        mnPrRadStatODUTxHigh
            TruthValue,

        mnPrRadStatMinTxFreq
            INTEGER,

        mnPrRadStatMaxTxFreq
            INTEGER,

        mnPrRadStatMinRxFreq
            INTEGER,

        mnPrRadStatMaxRxFreq
            INTEGER,

-- Following are related to Protection Status
        mnPrRadStatProtType
            INTEGER,

        mnPrRadStatProtOtherRadioAlarm
            TruthValue,

        mnPrRadStatProtManualMode
            TruthValue,

        mnPrRadStatProtOnlineState
            TruthValue,

        mnPrRadStatMinTxPower
            INTEGER,

        mnPrRadStatMaxTxPower
            INTEGER,

-- The following are related to Performance History
        mnPrRadStatPerfHistDuration
            DisplayString,

        mnPrRadStatPerfHistMinDuration
            DisplayString,

        mnPrRadStatPerfHistRecords
            INTEGER,

        mnPrRadStatPerfHistMinRecords
            INTEGER,

        mnPrRadStatPerfHistMaxVarIndex
            INTEGER,

-- Additional variables
        mnPrRadStatTrSpace
            INTEGER,

        mnPrRadStatModulation
            ModulationType,

-- AMT-M additions
        mnPrRadStatProtToggleMode
            INTEGER,
        
        mnPrRadStatModulationInst
            ModulationType,
        
        mnPrRadStatModulationConf
            ModulationType,
        
        mnPrRadStatModulationProp
            ModulationType,
        
        mnPrRadStatSysGainConf  
            INTEGER,
        
        mnPrRadStatSysGainProp  
            INTEGER,
            
        mnPrRadStatLoopSwitchStat
            INTEGER
    }

mnRadioIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..64)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The radio index. When accessing an ifEntry,
             using this value as the ifIndex yields the
             conceptual row of the inter-radio communication
             interface for this radio.  By convention,
             specific values of the mnRadioIndex object are
             assigned as follows:

             1 = NE primary radio
             2 = FE primary radio
             3 = NE secondary radio
             4 = FE secondary radio

             The assignment of the mnRadioIndex value
             persists across reinitializations of the radio."
    ::= { mnPrRadStatEntry  1 }

mnPrRadStatCurSeverity OBJECT-TYPE
    SYNTAX  ITUSeverity
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The maximum current alarm severity for this radio
             These are the standard values as per ITU X.733.
             The first release of the radio firmware
             supports just cleared, major and minor."
    ::= { mnPrRadStatEntry  2 }

mnPrRadStatLatchSeverity OBJECT-TYPE
    SYNTAX  ITUSeverity
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The maximum alarm severity attained by this radio
             since latched alarms were last reset.  These are the
             standard values as per ITU X.733.  The first release of
             the radio firmware supports just cleared, major and minor."
    ::= { mnPrRadStatEntry  3 }

mnPrRadStatMinorAlarm OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "True if there is a minor alarm active this radio."
    ::= { mnPrRadStatEntry  4 }

mnPrRadStatControlOn OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "True if there is a control (mute, loopback, BERT) on (in
             the non-default, service-affecting state) in this radio."
    ::= { mnPrRadStatEntry  5 }

mnPrRadStatCurAlarmList OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE (256))
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "List of radio's currently active alarms. The OCTET STRING is a
             series of up to 128 16-bit words, each word representing
             the alarm ID of an active alarm, in ascending order by
             alarm ID.  The string is terminated by a word containing
             0.  This object allows all the alarms to be retrieved in a
             single PDU."
    ::= { mnPrRadStatEntry  6 }

mnPrRadStatUptime OBJECT-TYPE
    SYNTAX  INTEGER     -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The elapsed time, in seconds, since this radio
             was last rebooted."
    ::= { mnPrRadStatEntry  8 }

mnPrRadStatLastAlarmChangeTime OBJECT-TYPE
    SYNTAX  TimeTicks
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The time the alarm state of this radio last changed.
             The time is in centiseconds since agent radio was
             last rebooted: i.e.: it the value of the agent's
             SysUptime object at the time of the last change.)"
    ::= { mnPrRadStatEntry  10 }

mnPrRadStatLastCCChangeTime OBJECT-TYPE
    SYNTAX  TimeTicks
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The time that a configuation or control object of this
             radio was last changed by the user.
             The time is in centiseconds since agent radio was
             last rebooted: i.e.: it the value of the agent's
             SysUptime object at the time of the last
             change.)"
    ::= { mnPrRadStatEntry  12 }

mnPrRadStatLatchedTimeString OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The elapsed time since latched alarms were last
             reset on this radio.  This object has the
             format `000d 00:00:00'."
    ::= { mnPrRadStatEntry  13 }


--start of 11 static (not dynamic) status items,

mnPrRadStatImageBooted OBJECT-TYPE
    SYNTAX  INTEGER {
                 primary(1),
                 secondary(2)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "This object identifies which firmware image is
             currently running on this radio."
    ::= { mnPrRadStatEntry  14 }

mnPrRadStatIFBoardType OBJECT-TYPE
    SYNTAX  IfBandwidth
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Installed IF Board Type defined by its physical filter 
             bandwidths (bandwidths of 2.5, 3.5, 5, 7, 10, 14, 20, 25,
             and 28 MHz for this radio)."
    ::= { mnPrRadStatEntry  15 }

mnPrRadStatPSVoltage OBJECT-TYPE
    SYNTAX  INTEGER {
                 volt24(1),
                 volt48(2),
                 other(99)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Power Supply type for this radio."
    ::= { mnPrRadStatEntry  16 }

mnPrRadStatODUFreqBand OBJECT-TYPE
    SYNTAX  INTEGER (0..50)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "ODU Frequency Band (GHz) for this radio."
    ::= { mnPrRadStatEntry  17 }

mnPrRadStatODUSubBand OBJECT-TYPE
    SYNTAX  INTEGER {
                 subbandA(1),
                 subbandB(2),
                 subbandOther(99)
              }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "ODU sub band for this radio."
    ::= { mnPrRadStatEntry  18 }

mnPrRadStatODUTxHigh OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "ODU Tx High.  True if this radio's ODU is Tx High."
    ::= { mnPrRadStatEntry  19 }

mnPrRadStatMinTxFreq OBJECT-TYPE
    SYNTAX  INTEGER -- UNITS kilohertz
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The minimum allowable transmitter frequency for
             this radio."
    ::= { mnPrRadStatEntry  20 }

mnPrRadStatMaxTxFreq OBJECT-TYPE
    SYNTAX  INTEGER -- UNITS kilohertz
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The maximum allowable transmitter frequency for
             this radio."
    ::= { mnPrRadStatEntry  21 }

mnPrRadStatMinRxFreq OBJECT-TYPE
    SYNTAX  INTEGER -- UNITS kilohertz
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The minimum allowable receiver frequency for
             this radio."
    ::= { mnPrRadStatEntry  22 }

mnPrRadStatMaxRxFreq OBJECT-TYPE
    SYNTAX  INTEGER -- UNITS kilohertz
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The maximum allowable receiver frequency for
             this radio."
    ::= { mnPrRadStatEntry  23 }

mnPrRadStatProtType OBJECT-TYPE
    SYNTAX  INTEGER {
                 unprotected(1),
                 primaryA(2),
                 secondaryB(3)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The protection type of this radio."
    ::= { mnPrRadStatEntry  24 }


--End of 11 static (not dynamic) status items....


mnPrRadStatProtOtherRadioAlarm OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The radio on the other side of the hot standby
             shelf has a High-Priority Alarm."
    ::= { mnPrRadStatEntry  25 }

mnPrRadStatProtManualMode OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Either a user has set mnPrIDUConfProtOnlineRequest
             or the switch on the front of the hot standby
             shelf has been put into the manual position."
    ::= { mnPrRadStatEntry  26 }

mnPrRadStatProtOnlineState OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "This IDU is currently on-line."
    ::= { mnPrRadStatEntry  27 }


mnPrRadStatMinTxPower OBJECT-TYPE
    SYNTAX  INTEGER -- UNITS dB
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The maximum allowable transmitter power for
             this radio."
    ::= { mnPrRadStatEntry  28 }


mnPrRadStatMaxTxPower OBJECT-TYPE
    SYNTAX  INTEGER -- UNITS dB
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The minimum allowable transmitter power for
             this radio."
    ::= { mnPrRadStatEntry  29 }

-- Performance History status values
mnPrRadStatPerfHistDuration OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The elapsed time of performance history data that is currently
           available. This is based on the number of records currently stored
           and the sample frequency. This object has the format `000 d 00:00:00'."
    ::= { mnPrRadStatEntry  30 }

mnPrRadStatPerfHistMinDuration OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The minimum time of performance history data that will be
           available at any time assuming that performance history collection
           has been enabled for a sufficient amount of time. This is based on
           the number of records that can be stored and the sample frequency.
           This object has the format `000 d 00:00:00'."
    ::= { mnPrRadStatEntry  31 }

mnPrRadStatPerfHistRecords OBJECT-TYPE
    SYNTAX  INTEGER     -- UNITS records
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The number of performance history samples that are currently
           available."
    ::= { mnPrRadStatEntry  32 }

mnPrRadStatPerfHistMinRecords OBJECT-TYPE
    SYNTAX  INTEGER     -- UNITS records
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The minimum number of performance history samples that will be
           available at any time assuming that performance history collection
           has been enabled for a sufficient amount of time."
    ::= { mnPrRadStatEntry  33 }

mnPrRadStatPerfHistMaxVarIndex OBJECT-TYPE
    SYNTAX  INTEGER     -- UNITS records
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The maximum number of performance history variables available to
           be sampled. This cannot exceed 32."
    ::= { mnPrRadStatEntry  34 }

mnPrRadStatTrSpace OBJECT-TYPE
    SYNTAX  INTEGER -- UNITS kilohertz
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The transmit/receive spacing in kilohertz for
             this radio."
    ::= { mnPrRadStatEntry  35 }

mnPrRadStatModulation OBJECT-TYPE
    SYNTAX  ModulationType
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The modulation type used for the current modem configuration."
    ::= { mnPrRadStatEntry  36 }
    
mnPrRadStatProtToggleMode OBJECT-TYPE
    SYNTAX  INTEGER {
                 positionAuto(1),
                 positionPri(2),
                 positionSec(3)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Position of the Protection Toggle Switch on the LSM directly
             connected to this radio.  positionAuto(1) allows automatic
             protection switching.  The other two values force all the
             traffic to go through the either the Primary or the Secondary
             (AMT-M)."
    ::= { mnPrRadStatEntry  41 }

mnPrRadStatModulationInst OBJECT-TYPE
    SYNTAX  ModulationType 
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Maximum licensed modulation. (AMT-M)"
    ::= { mnPrRadStatEntry  42 }

mnPrRadStatModulationConf OBJECT-TYPE
    SYNTAX  ModulationType 
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Currently configured modulation. (AMT-M)"
    ::= { mnPrRadStatEntry  43 }

mnPrRadStatModulationProp OBJECT-TYPE
    SYNTAX  ModulationType 
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Proposed modulation. (AMT-M)"
    ::= { mnPrRadStatEntry  44 }

mnPrRadStatSysGainConf OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Configured system gain in dB. (AMT-M)"
    ::= { mnPrRadStatEntry  45 }

mnPrRadStatSysGainProp OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Proposed system gain in dB. (resulting from the 'Evaluate Configuration'
             operation). (AMT-M)"
    ::= { mnPrRadStatEntry  46 }

mnPrRadStatLoopSwitchStat OBJECT-TYPE
    SYNTAX  INTEGER {
                 detected(1),
                 broken(2),
                 offline(3),
                 unknown(4)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Loopswitch loop detect status."
    ::= { mnPrRadStatEntry  47 }

-------------------------------------------------------------------------------
-- Route Status Table
-------------------------------------------------------------------------------

mnPrRouteStatTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrRouteStatEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing IP routing information for
             each radio within the link."
    ::= { mnPrStatusObjects  3 }

mnPrRouteStatEntry OBJECT-TYPE
    SYNTAX  MnPrRouteStatEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "The IP routing information for a single
             radio within the link."
    INDEX   { mnRadioIndex, mnPrRouteStatIndex }
    ::= { mnPrRouteStatTable  1 }

MnPrRouteStatEntry ::=
    SEQUENCE {

        mnPrRouteStatIndex
            INTEGER,

        mnPrRouteStatDestination
            IpAddress,

        mnPrRouteStatMask
            IpAddress,

        mnPrRouteStatNextHop
            IpAddress,

        mnPrRouteStatMetric
            INTEGER,

        mnPrRouteStatInterface
            INTEGER,

        mnPrRouteStatType
            DisplayString,

        mnPrRouteStatHowAdded
            DisplayString

    }

mnPrRouteStatIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..100)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The index for this route."
    ::= { mnPrRouteStatEntry  1 }

mnPrRouteStatDestination OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The destination IP address of this route."
    ::= { mnPrRouteStatEntry  2 }

mnPrRouteStatMask OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The IP subnet mask of this route."
    ::= { mnPrRouteStatEntry  3 }

mnPrRouteStatNextHop OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The next-hop IP address of this route."
    ::= { mnPrRouteStatEntry  4 }

mnPrRouteStatMetric OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The routing metric (number of routing hops)
              for this route."
    ::= { mnPrRouteStatEntry  5 }

mnPrRouteStatInterface OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The interface that packets egress when using
              this route."
    ::= { mnPrRouteStatEntry  6 }

mnPrRouteStatType OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The type of route this is.  Currently supported
              strings are:
                 IND - indirect route (route through router)
                 DIR - direct route (no additional routing hops)"
    ::= { mnPrRouteStatEntry  7 }

mnPrRouteStatHowAdded OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "What caused this route to be added.  Currently
              supported strings are:
                 System - route added by operating system
                 Dynamic - route added by dynamic routing protocol
                 Static - route added by static user entry"
    ::= { mnPrRouteStatEntry  8 }



-------------------------------------------------------------------------------
-- Operation Result Table
-------------------------------------------------------------------------------

mnPrOpResultTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrOpResultEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing Operation Result information for
             each radio within the link."
    ::= { mnPrStatusObjects  4 }

mnPrOpResultEntry OBJECT-TYPE
    SYNTAX  MnPrOpResultEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "The Operation Result information for a single
             radio within the link."
    INDEX   { mnRadioIndex, mnPrOpResultIndex }
    ::= { mnPrOpResultTable  1 }

MnPrOpResultEntry ::=
    SEQUENCE {

        mnPrOpResultIndex
            INTEGER,

        mnPrOpResultLevel
            INTEGER,

        mnPrOpResultMessage
            DisplayString,

        mnPrOpResultArgument
            INTEGER

    }

mnPrOpResultIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..1024)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The index for this entry."
    ::= { mnPrOpResultEntry  1 }

mnPrOpResultLevel OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrOpResultEntry  2 }

mnPrOpResultMessage OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrOpResultEntry  3 }

mnPrOpResultArgument OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrOpResultEntry  4 }



------------------------------------------------------------------------------
-- Current Alarm Table
-------------------------------------------------------------------------------

mnPrCurAlarmTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrCurAlarmEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing current alarm status
             information for each radio within the link.  This
             table has a primary index, mnRadioIndex,
             associated with a radio within the link.  This
             table has a secondary index, mnPrCurAlarmID,
             associated with a specific alarm."
    ::= { mnPrAlarmObjects  3 }

mnPrCurAlarmEntry OBJECT-TYPE
    SYNTAX  MnPrCurAlarmEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of information about a single active alarm
             within the link."
    INDEX   { mnRadioIndex,  mnPrCurAlarmID }
    ::= { mnPrCurAlarmTable  1 }

MnPrCurAlarmEntry ::=
    SEQUENCE {
        mnPrCurAlarmID
            INTEGER,

        mnPrCurAlarmText
            DisplayString
    }

mnPrCurAlarmID OBJECT-TYPE
    SYNTAX  INTEGER (0..65535)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The alarm ID."
    ::= { mnPrCurAlarmEntry  1 }


mnPrCurAlarmText OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The textual description of this current alarm."
    ::= { mnPrCurAlarmEntry  3 }


-------------------------------------------------------------------------------
-- Latched Alarm Table
-------------------------------------------------------------------------------

mnPrLatAlarmTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrLatAlarmEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing latched (previously active
             but not currently active) alarm status
             information for each radio within the link.  This
             table has a primary index, mnPradioIndex,
             associated with a radio within the link.  This
             table has a secondary index, mnPrLatAlarmID,
             associated with a specific alarm."
    ::= { mnPrAlarmObjects  5 }

mnPrLatAlarmEntry OBJECT-TYPE
    SYNTAX  MnPrLatAlarmEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of information about a single latched
             alarm within the link."
    INDEX   { mnRadioIndex,  mnPrLatAlarmID }
    ::= { mnPrLatAlarmTable  1 }

MnPrLatAlarmEntry ::=
    SEQUENCE {
        mnPrLatAlarmID
            INTEGER,

        mnPrLatAlarmText
            DisplayString
    }

mnPrLatAlarmID OBJECT-TYPE
    SYNTAX  INTEGER (0..65535)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The alarm ID."
    ::= { mnPrLatAlarmEntry  1 }

mnPrLatAlarmText OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The textual description of this latched alarm."
    ::= { mnPrLatAlarmEntry  2 }



-------------------------------------------------------------------------------
-- Temporary Alarm Log Table
-------------------------------------------------------------------------------

mnPrAlarmLogTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrAlarmLogEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "Temporary Alarm Log Table"
    ::= { mnPrAlarmObjects  6 }

mnPrAlarmLogEntry OBJECT-TYPE
    SYNTAX  MnPrAlarmLogEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "One Alarm Log Entry."
    INDEX   { mnRadioIndex, mnPrAlarmLogIndex }
    ::= { mnPrAlarmLogTable  1 }

MnPrAlarmLogEntry ::=
    SEQUENCE {
        mnPrAlarmLogIndex
            INTEGER,

        mnPrAlarmLogText
            DisplayString
    }

mnPrAlarmLogIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..9999)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Alarm Log Index."
    ::= { mnPrAlarmLogEntry  1 }

mnPrAlarmLogText OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Alarm Log Text."
    ::= { mnPrAlarmLogEntry  2 }


-------------------------------------------------------------------------------
-- Temporary Event Log Table
-------------------------------------------------------------------------------

mnPrEventLogTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrEventLogEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "Temporary Event Log Table"
    ::= { mnPrAlarmObjects  7 }

mnPrEventLogEntry OBJECT-TYPE
    SYNTAX  MnPrEventLogEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "One Event Log Entry."
    INDEX   { mnRadioIndex, mnPrEventLogIndex }
    ::= { mnPrEventLogTable  1 }

MnPrEventLogEntry ::=
    SEQUENCE {
        mnPrEventLogIndex
            INTEGER,

        mnPrEventLogText
            DisplayString
    }

mnPrEventLogIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..9999)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Event Log Index."
    ::= { mnPrEventLogEntry  1 }

mnPrEventLogText OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Event Log Text."
    ::= { mnPrEventLogEntry  2 }



-------------------------------------------------------------------------------
-- Notification (Trap) Objects
-------------------------------------------------------------------------------


mnPrNotifyID OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only -- accessible-for-notify
    STATUS  mandatory
    DESCRIPTION
           "The AlarmID of the alarm."
    ::= { mnPrNotifyObjects  1 }

mnPrNotifyText OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only -- accessible-for-notify
    STATUS  mandatory
    DESCRIPTION
           "A textual description the alarm."
    ::= { mnPrNotifyObjects  2 }

mnPrNotifyParameter OBJECT-TYPE
    SYNTAX  INTEGER (-2147483648..2147483647)
    ACCESS  read-only -- accessible-for-notify
    STATUS  mandatory
    DESCRIPTION
           "This object provides additional information for a
             alarm.  Values are alarm-specific."
    ::= { mnPrNotifyObjects  3 }

mnPrNotifySeverity OBJECT-TYPE
    SYNTAX  INTEGER (-2147483648..2147483647)
    ACCESS  read-only -- accessible-for-notify
    STATUS  mandatory
    DESCRIPTION
           "The severity of the alarm."
    ::= { mnPrNotifyObjects  4 }

mnPrNotifyRadioIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..64)
    ACCESS  read-only -- accessible-for-notify
    STATUS  mandatory
    DESCRIPTION
           "This object provides the mnRadioIndex value
             representing the radio experiencing the alarm, relative to
             the relaying (agent) radio.  The trap will have the IP
             address of the relaying radio, but the RadioIndex
             will indicate which radio the alarm is associated with."
    ::= { mnPrNotifyObjects  5 }

mnPrNotifyRadioName OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only -- accessible-for-notify
    STATUS  mandatory
    DESCRIPTION
           "This object provides the administratively
             assigned name of the radio experiencing the
             alarm. The value of this object is
             configured via the mnPrSysConfRadioName object."
    ::= { mnPrNotifyObjects  6 }

mnPrNotifyTimeStamp OBJECT-TYPE
    SYNTAX  DateAndTime
    ACCESS  read-only -- accessible-for-notify
    STATUS  mandatory
    DESCRIPTION
           "The time that the alarm was sent, according to the
             originating radio's realtime clock."
    ::= { mnPrNotifyObjects  7 }


-------------------------------------------------------------------------------
-- Proteus AMT Family Notifications (Traps)
-------------------------------------------------------------------------------

mnPrFNotificationMajorAlarmSet TRAP-TYPE
    ENTERPRISE mnProtAMTV1MIB
    VARIABLES   {
                 mnPrNotifyID,
                 mnPrNotifyText,
                 mnPrNotifyParameter,
                 mnPrNotifySeverity,
                 mnPrNotifyRadioIndex,
                 mnPrNotifyRadioName,
                 mnPrNotifyTimeStamp
               }
        --MIB Extensions for SNMPc
        --&ACTIONS { log, critical }
        --&CLEARS { 2, 3, 4 }
        --&MATCH { mnPrNotifyID }
        --&MESG "$6, SET MAJOR, $2"
    DESCRIPTION
           "A major level Alarm was set (see varbinds for details)."
    ::= 1

mnPrFNotificationAlarmClear TRAP-TYPE
    ENTERPRISE mnProtAMTV1MIB
    VARIABLES   {
                 mnPrNotifyID,
                 mnPrNotifyText,
                 mnPrNotifyParameter,
                 mnPrNotifySeverity,
                 mnPrNotifyRadioIndex,
                 mnPrNotifyRadioName,
                 mnPrNotifyTimeStamp
               }
        --MIB Extensions for SNMPc
        --&ACTIONS { log, normal }
        --&CLEARS { 1, 3, 4 }
        --&MATCH { mnPrNotifyID }
        --&MESG "$6, CLEAR, $2"
    DESCRIPTION
           "An Alarm was cleared (see varbinds for details)."
    ::= 2

mnPrFNotificationMinorAlarmSet TRAP-TYPE
    ENTERPRISE mnProtAMTV1MIB
    VARIABLES   {
                 mnPrNotifyID,
                 mnPrNotifyText,
                 mnPrNotifyParameter,
                 mnPrNotifySeverity,
                 mnPrNotifyRadioIndex,
                 mnPrNotifyRadioName,
                 mnPrNotifyTimeStamp
               }
        --MIB Extensions for SNMPc
        --&ACTIONS { log, major }
        --&CLEARS { 1, 2, 4 }
        --&MATCH { mnPrNotifyID }
        --&MESG "$6, SET MINOR, $2"
    DESCRIPTION
           "A minor level Alarm was set (see varbinds for details)."
    ::= 3

mnPrFNotificationInfoAlarmSet TRAP-TYPE
    ENTERPRISE mnProtAMTV1MIB
    VARIABLES   {
                 mnPrNotifyID,
                 mnPrNotifyText,
                 mnPrNotifyParameter,
                 mnPrNotifySeverity,
                 mnPrNotifyRadioIndex,
                 mnPrNotifyRadioName,
                 mnPrNotifyTimeStamp
               }
        --MIB Extensions for SNMPc
        --&ACTIONS { log, warning }
        --&CLEARS { 1, 2, 3 }
        --&MATCH { mnPrNotifyID }
        --&MESG "$6, SET INFO, $2"
    DESCRIPTION
           "An informational Alarm was set (see varbinds for details)."
    ::= 4


-------------------------------------------------------------------------------
-- Original Proteus AMT Notifications (Traps)
-------------------------------------------------------------------------------

mnPrNotificationMajorAlarmSet TRAP-TYPE
    ENTERPRISE mnRegSysProtAMT
    VARIABLES   {
                 mnPrNotifyID,
                 mnPrNotifyText,
                 mnPrNotifyParameter,
                 mnPrNotifySeverity,
                 mnPrNotifyRadioIndex,
                 mnPrNotifyRadioName,
                 mnPrNotifyTimeStamp
               }
        --MIB Extensions for SNMPc
        --&ACTIONS { log, critical }
        --&CLEARS { 2, 3, 4 }
        --&MATCH { mnPrNotifyID }
        --&MESG "$6, SET MAJOR, $2"
    DESCRIPTION
           "A major level Alarm was set (see varbinds for details)."
    ::= 1

mnPrNotificationAlarmClear TRAP-TYPE
    ENTERPRISE mnRegSysProtAMT
    VARIABLES   {
                 mnPrNotifyID,
                 mnPrNotifyText,
                 mnPrNotifyParameter,
                 mnPrNotifySeverity,
                 mnPrNotifyRadioIndex,
                 mnPrNotifyRadioName,
                 mnPrNotifyTimeStamp
               }
        --MIB Extensions for SNMPc
        --&ACTIONS { log, normal }
        --&CLEARS { 1, 3, 4 }
        --&MATCH { mnPrNotifyID }
        --&MESG "$6, CLEAR, $2"
    DESCRIPTION
           "An Alarm was cleared (see varbinds for details)."
    ::= 2

mnPrNotificationMinorAlarmSet TRAP-TYPE
    ENTERPRISE mnRegSysProtAMT
    VARIABLES   {
                 mnPrNotifyID,
                 mnPrNotifyText,
                 mnPrNotifyParameter,
                 mnPrNotifySeverity,
                 mnPrNotifyRadioIndex,
                 mnPrNotifyRadioName,
                 mnPrNotifyTimeStamp
               }
        --MIB Extensions for SNMPc
        --&ACTIONS { log, major }
        --&CLEARS { 1, 2, 4 }
        --&MATCH { mnPrNotifyID }
        --&MESG "$6, SET MINOR, $2"
    DESCRIPTION
           "A minor level Alarm was set (see varbinds for details)."
    ::= 3

mnPrNotificationInfoAlarmSet TRAP-TYPE
    ENTERPRISE mnRegSysProtAMT
    VARIABLES   {
                 mnPrNotifyID,
                 mnPrNotifyText,
                 mnPrNotifyParameter,
                 mnPrNotifySeverity,
                 mnPrNotifyRadioIndex,
                 mnPrNotifyRadioName,
                 mnPrNotifyTimeStamp
               }
        --MIB Extensions for SNMPc
        --&ACTIONS { log, warning }
        --&CLEARS { 1, 2, 3 }
        --&MATCH { mnPrNotifyID }
        --&MESG "$6, SET INFO, $2"
    DESCRIPTION
           "An informational Alarm was set (see varbinds for details)."
    ::= 4


-------------------------------------------------------------------------------
-- Performance Base Table
-------------------------------------------------------------------------------

mnPrPerfBaseTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrPerfBaseEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing the base performance objects from whose
            values all other performance statistics and performance
            history is derived.  The objects are gauges and counters, and
            the counters start counting when the radio is initialized, and
            are never reset.  Virtual 64-bit counters (Display64 DisplayString
            objects) are used in some circumstances to ensure that no counter
            can possibly overflow in less than 100 years."
    ::= { mnPrPerformanceObjects  1 }

mnPrPerfBaseEntry OBJECT-TYPE
    SYNTAX  MnPrPerfBaseEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of base performance objects for a single radio or interface."
    INDEX   { mnInterfaceIndex }
    ::= { mnPrPerfBaseTable  1 }

MnPrPerfBaseEntry ::=
    SEQUENCE {
        mnInterfaceIndex
            INTEGER,

        mnPrPerfBaseTxPower
            INTEGER,

        mnPrPerfBaseRSL
            INTEGER,

        mnPrPerfBaseFadeMargin
            INTEGER,

        mnPrPerfBaseElapsedSecs
            Counter,

        mnPrPerfBaseASs
            Counter,

        mnPrPerfBaseUSs
            Counter,

        mnPrPerfBaseESs
            Counter,

        mnPrPerfBaseSESs
            Counter,

        mnPrPerfBaseTotalBlocks
            Display64,

        mnPrPerfBaseErrBlocks
            Display64,

        mnPrPerfBaseBBEs
            Display64,
            
        mnPrPerfBaseSNR
            DisplayString,
        
        mnPrPerfBaseDecoderStress
            DisplayString,
        
        mnPrPerfBaseAcmTxProfile
            DisplayString,
        
        mnPrPerfBaseAcmRxProfile
            DisplayString,
        
        mnPrPerfBaseLinkCapMbps
            INTEGER,
        
        mnPrPerfBaseRxEtherMbps
            DisplayString,
        
        mnPrPerfBaseDemodErrBlocks
            Display64,

        mnPrPerfBaseRFUTemp
            INTEGER,

        mnPrPerfBaseRSL1
            INTEGER,
        
        mnPrPerfBaseRSL2
            INTEGER

    }

mnInterfaceIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..9999)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Union of the Radio Index and Tributary Index.  For indexing
             tables that can have rows referring to either kind of interface."
    ::= { mnPrPerfBaseEntry  1 }

mnPrPerfBaseTxPower OBJECT-TYPE
    SYNTAX  INTEGER (-110..30) -- UNITS dBm
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The actual transmit power for this radio in dBm,
            resulting from user setting or ATPC.
            -100 is returned if the TxPower is not known.
            -101 is returned if the Transmitter has failed.
            -102 is returned if the Transmitter is muted.
            0 is returned if the row refers to a tributary."
    ::= { mnPrPerfBaseEntry  2 }

mnPrPerfBaseRSL OBJECT-TYPE
    SYNTAX  INTEGER (-100..0)   -- UNITS dBm
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The received signal level (RSL) in dBm.
            0 is returned if the row refers to a tributary.
            -99 is returned if no RFU is attached."
    ::= { mnPrPerfBaseEntry  3 }

mnPrPerfBaseFadeMargin OBJECT-TYPE
    SYNTAX  INTEGER (-100..100)   -- UNITS dBm
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The current fade margin in dBm.
            0 is returned if the row refers to a tributary."
    ::= { mnPrPerfBaseEntry  4 }

mnPrPerfBaseElapsedSecs OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of seconds since the radio software
            initialized (seconds of uptime). May not be reset."
    ::= { mnPrPerfBaseEntry  5 }

mnPrPerfBaseASs OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 Available Seconds observed for the
            radio or tributary interface in question since the radio software
            initialized.  May not be reset."
    ::= { mnPrPerfBaseEntry  6 }

mnPrPerfBaseUSs OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 Unavailable Seconds observed for the
            radio or tributary interface in question since the radio software
            initialized.  May not be reset."
    ::= { mnPrPerfBaseEntry  7 }

mnPrPerfBaseESs OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 Errored Seconds observed for the
            radio or tributary interface in question since the radio software
            initialized.  May not be reset."
    ::= { mnPrPerfBaseEntry  8 }

mnPrPerfBaseSESs OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 Severely Errored Seconds observed for the
            radio or tributary interface in question since the radio software
            initialized.  May not be reset."
    ::= { mnPrPerfBaseEntry  9 }

mnPrPerfBaseTotalBlocks OBJECT-TYPE
    SYNTAX  Display64    -- UNITS blocks
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 blocks passed by the
            radio or tributary interface in question since the radio software
            initialized.  64-bit counter expressed as an ASCII string.
            May not be reset."
    ::= { mnPrPerfBaseEntry  10 }

mnPrPerfBaseErrBlocks OBJECT-TYPE
    SYNTAX  Display64    -- UNITS blocks errors
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 errored blocks observed by the
            radio or tributary interface in question since the radio software
            initialized.  64-bit counter expressed as an ASCII string.
            May not be reset."
    ::= { mnPrPerfBaseEntry  11 }

mnPrPerfBaseBBEs OBJECT-TYPE
    SYNTAX  Display64    -- UNITS block errors
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 background block errors (BBEs) observed by the
            radio or tributary interface in question since the radio software
            initialized.  These are errored blocks that did NOT occur in a
            SES.  64-bit counter expressed as an ASCII string.
            May not be reset."
    ::= { mnPrPerfBaseEntry  12 }

mnPrPerfBaseSNR OBJECT-TYPE
    SYNTAX  DisplayString    
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Current Receiver Signal-to-Noise Ratio (dB)"
    ::= { mnPrPerfBaseEntry  13 }

mnPrPerfBaseDecoderStress OBJECT-TYPE
    SYNTAX  DisplayString    
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Decoder Stress"
    ::= { mnPrPerfBaseEntry  14 }

mnPrPerfBaseAcmTxProfile OBJECT-TYPE
    SYNTAX  DisplayString    
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Current ACM Tx Profile information:
            (<profile index>: <modulation>-<total capacity>"
    ::= { mnPrPerfBaseEntry  15 }

mnPrPerfBaseAcmRxProfile OBJECT-TYPE
    SYNTAX  DisplayString    
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Current ACM Rx Profile information:
            (<profile index>: <modulation>-<total capacity>)"
    ::= { mnPrPerfBaseEntry  16 }
    
mnPrPerfBaseLinkCapMbps OBJECT-TYPE
    SYNTAX  INTEGER  
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Current overall link capacity (PDH, Ethernet, overhead) in 
            the Rx direction, in Megabits/sec.  Affected by ACM changes."
    ::= { mnPrPerfBaseEntry  17 }
        
mnPrPerfBaseRxEtherMbps OBJECT-TYPE
    SYNTAX  DisplayString    
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Current (last valid, last ~2 seconds) rate of received Ethernet traffic 
            over all Ethernet channels, in Megabits/sec."
    ::= { mnPrPerfBaseEntry  18 }
        
mnPrPerfBaseDemodErrBlocks OBJECT-TYPE
    SYNTAX  Display64    -- UNITS blocks
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Count of uncorrected errored blocks seen by the local Demod since boot."
    ::= { mnPrPerfBaseEntry  19 }

mnPrPerfBaseRFUTemp OBJECT-TYPE
    SYNTAX  INTEGER  -- UNITS degrees Celsius
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Current temperature of the RFU in Integer degrees Celsius."
    ::= { mnPrPerfBaseEntry  20 }
        
        
mnPrPerfBaseRSL1 OBJECT-TYPE
    SYNTAX  INTEGER (-100..0)   -- UNITS dBm
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The received signal level (RSL) in dBm for the main (default)
            receiver in an RFU that has two receivers and the ability
            to switch internally between them (or use both)
            so as to supply the best possible signal on the IF interface.
            -99 is returned if the RFU does not have this dual-RX feature."
    ::= { mnPrPerfBaseEntry  21 }

mnPrPerfBaseRSL2 OBJECT-TYPE
    SYNTAX  INTEGER (-100..0)   -- UNITS dBm
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The received signal level (RSL) in dBm for the diversity (backup)
            receiver in an RFU that has two receivers and the ability
            to switch internally between them (or use both)
            so as to supply the best possible signal on the IF interface.
            -99 is returned if the RFU does not have this dual-RX feature."
    ::= { mnPrPerfBaseEntry  22 }

        

-------------------------------------------------------------------------------
-- Performance Summary Intervals Table
-------------------------------------------------------------------------------

mnPrPerfSumIntTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrPerfSumIntEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table that summarizes key performance statistics over overlapping
            intervals leading up to the present: Last Second, Last Minute, Last
            Hour, Last Day and Last Week.  There is a column for each statistic,
            and a row for each of the five intervals."
    ::= { mnPrPerformanceObjects  2 }

mnPrPerfSumIntEntry OBJECT-TYPE
    SYNTAX  MnPrPerfSumIntEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of performance statistics for a single radio or interface and
            for a single summary interval."
    INDEX   { mnInterfaceIndex, mnIntervalIndex }
    ::= { mnPrPerfSumIntTable  1 }

MnPrPerfSumIntEntry ::=
    SEQUENCE {

        mnIntervalIndex
            INTEGER,

        mnPrPerfSumIntESs
            Counter,

        mnPrPerfSumIntSESs
            Counter,

        mnPrPerfSumIntBER
            DisplayString,

        mnPrPerfSumIntElapsedSecs
            Counter,

        mnPrPerfSumIntASs
            Counter
    }

mnIntervalIndex OBJECT-TYPE
     SYNTAX  INTEGER {
                 lastSecond(1),
                 lastMinute(2),
                 lastHour(3),
                 lastDay(4),
                 lastWeek(5)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Index enumerating what summary interval is being referred to."
    ::= { mnPrPerfSumIntEntry  1 }

mnPrPerfSumIntESs OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Count of errored seconds for the radio or interface in question,
            over the summary interval in question."
    ::= { mnPrPerfSumIntEntry  2 }

mnPrPerfSumIntSESs OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Count of severely errored seconds for the radio or interface in question,
            over the summary interval in question."
    ::= { mnPrPerfSumIntEntry  3 }

mnPrPerfSumIntBER OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Bit Error Rate for the radio or interface in question, over the
            summary interval in question.  Bit Error Rate is expressed as
            a string in the format n.nnE-mm."
    ::= { mnPrPerfSumIntEntry  4 }

mnPrPerfSumIntElapsedSecs OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Count of elapsed seconds for the radio or interface in question,
            over the summary interval in question."
    ::= { mnPrPerfSumIntEntry  5 }

mnPrPerfSumIntASs OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Count of available seconds for the radio or interface in question,
            over the summary interval in question."
    ::= { mnPrPerfSumIntEntry  6 }


-------------------------------------------------------------------------------
-- Performance Custom Interval Table
-------------------------------------------------------------------------------


mnPrPerfCustIntTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrPerfCustIntEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing performance statistics for the 'Custom
            Interval' from the user's last reset of the custom interval
            to the present, with one row for each radio or interface
            in the link.  The system command resetCustomPerformanceInterval
            resets all these statistics and thus starts a new custom interval."
    ::= { mnPrPerformanceObjects  3 }

mnPrPerfCustIntEntry OBJECT-TYPE
    SYNTAX  MnPrPerfCustIntEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of performance statistics pertaining to the custom interval
            for a single radio or interface."
    INDEX   { mnInterfaceIndex }
    ::= { mnPrPerfCustIntTable  1 }

MnPrPerfCustIntEntry ::=
    SEQUENCE {

        mnPrPerfCustIntTxPowerAvg
            DisplayString,

        mnPrPerfCustIntTxPowerMax
            INTEGER,

        mnPrPerfCustIntTxPowerMin
            INTEGER,

        mnPrPerfCustIntRSLAvg
            DisplayString,

        mnPrPerfCustIntRSLMax
            INTEGER,

        mnPrPerfCustIntRSLMin
            INTEGER,

        mnPrPerfCustIntElapsedSecs
            Counter,

        mnPrPerfCustIntASs
            Counter,

        mnPrPerfCustIntUSs
            Counter,

        mnPrPerfCustIntESs
            Counter,

        mnPrPerfCustIntSESs
            Counter,

        mnPrPerfCustIntTotalBlocks
            Display64,

        mnPrPerfCustIntErrBlocks
            Display64,

        mnPrPerfCustIntBBEs
            Display64,

        mnPrPerfCustIntESRatio
            DisplayString,

        mnPrPerfCustIntSESRatio
            DisplayString,

        mnPrPerfCustIntBER
            DisplayString,

        mnPrPerfCustIntBBER
            DisplayString

    }

mnPrPerfCustIntTxPowerAvg OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The average transmit power for this radio in dBm,
            over the custom interval. Format: '-xx.x'.
            '' is returned if the row refers to a tributary."
    ::= { mnPrPerfCustIntEntry  1 }

mnPrPerfCustIntTxPowerMax OBJECT-TYPE
    SYNTAX  INTEGER (-110..30)   -- UNITS dBm
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The maximum transmit power for this radio in dBm,
            over the custom interval.
            0 is returned if the row refers to a tributary."
    ::= { mnPrPerfCustIntEntry  2 }

mnPrPerfCustIntTxPowerMin OBJECT-TYPE
    SYNTAX  INTEGER (-110..30)   -- UNITS dBm
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The minimum transmit power for this radio in dBm,
            over the custom interval.
            0 is returned if the row refers to a tributary."
    ::= { mnPrPerfCustIntEntry  3 }

mnPrPerfCustIntRSLAvg OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The average RSL for this radio in dBm,
            over the custom interval. Format: '-xx.x'.
            '' is returned if the row refers to a tributary."
    ::= { mnPrPerfCustIntEntry  4 }

mnPrPerfCustIntRSLMax OBJECT-TYPE
    SYNTAX  INTEGER (-100..0)   -- UNITS dBm
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The maximum RSL for this radio in dBm,
            over the custom interval.
            0 is returned if the row refers to a tributary."
    ::= { mnPrPerfCustIntEntry  5 }

mnPrPerfCustIntRSLMin OBJECT-TYPE
    SYNTAX  INTEGER (-100..0)   -- UNITS dBm
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The minimum RSL for this radio in dBm,
            over the custom interval.
            0 is returned if the row refers to a tributary."
    ::= { mnPrPerfCustIntEntry  6 }

mnPrPerfCustIntElapsedSecs OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of seconds since the custom interval
            was reset."
    ::= { mnPrPerfCustIntEntry  7 }

mnPrPerfCustIntASs OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 Available Seconds observed for the
            radio or tributary interface in question since the custom interval
            was reset."
    ::= { mnPrPerfCustIntEntry  8 }

mnPrPerfCustIntUSs OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 Unavailable Seconds observed for the
            radio or tributary interface in question since the custom interval
            was reset."
    ::= { mnPrPerfCustIntEntry  9 }

mnPrPerfCustIntESs OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 Errored Seconds observed for the
            radio or tributary interface in question since the custom interval
            was reset."
    ::= { mnPrPerfCustIntEntry  10 }

mnPrPerfCustIntSESs OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 Severely Errored Seconds observed for the
            radio or tributary interface in question since the custom interval
            was reset."
    ::= { mnPrPerfCustIntEntry  11 }

mnPrPerfCustIntTotalBlocks OBJECT-TYPE
    SYNTAX  Display64    -- UNITS blocks
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 blocks passed by the
            radio or tributary interface in question since the custom interval
            was reset.  64-bit counter expressed as an ASCII string."
    ::= { mnPrPerfCustIntEntry  12 }

mnPrPerfCustIntErrBlocks OBJECT-TYPE
    SYNTAX  Display64    -- UNITS block errors
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 errored blocks observed by the
            radio or tributary interface in question since the custom interval
            was reset.  64-bit counter expressed as an ASCII string."
    ::= { mnPrPerfCustIntEntry  13 }

mnPrPerfCustIntBBEs OBJECT-TYPE
    SYNTAX  Display64    -- UNITS block errors
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 background block errors (BBEs) observed by the
            radio or tributary interface in question since the custom interval
            was reset.  64-bit counter expressed as an ASCII string."
    ::= { mnPrPerfCustIntEntry  14 }

mnPrPerfCustIntESRatio OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Standard G.826 ratio of Errored Seconds / Available Seconds for
            the radio or interface in question, over the Custom interval.
            Expressed as a string in the format 'x.xxxxxxxx'."
    ::= { mnPrPerfCustIntEntry  15 }

mnPrPerfCustIntSESRatio OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Standard G.826 ratio of Severely Errored Seconds / Available Seconds for
            the radio or interface in question, over the Custom interval.
            Expressed as a string in the format 'x.xxxxxxxx'."
    ::= { mnPrPerfCustIntEntry  16 }

mnPrPerfCustIntBER OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Bit Error Rate for the radio or interface in question, over the
            Custom interval.  Bit Error Rate is expressed as
            a string in the format n.nnE-mm."
    ::= { mnPrPerfCustIntEntry  17 }

mnPrPerfCustIntBBER OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Background Bit Error Rate for the radio or interface in question, over the
            Custom interval.  Bit Error Rate is expressed as
            a string in the format n.nnE-mm.  This is the same as the normal BER,
            but using only background bit errors (bit errors in seconds that are
            not severely errored), not all bit errors."
    ::= { mnPrPerfCustIntEntry  18 }





-------------------------------------------------------------------------------
-- Performance History Table
-------------------------------------------------------------------------------


mnPrPerfHistObjects OBJECT IDENTIFIER ::= { mnPrPerformanceObjects  4 }

mnPrPerfHistTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrPerfHistEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table that contains performance statistics samples taken over
            a period of time leading up to the present. There is a column
            for each statistic, and a row for each sample available from the
            history collection."
    ::= { mnPrPerfHistObjects  1 }

mnPrPerfHistEntry OBJECT-TYPE
    SYNTAX  MnPrPerfHistEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of performance statistics pertaining to a single radio or
           interface during a previous period of time."
    INDEX   { mnInterfaceIndex, mnPrPerfHistIndex }
    ::= { mnPrPerfHistTable  1 }

MnPrPerfHistEntry ::=
    SEQUENCE {

        mnPrPerfHistIndex
            INTEGER,

        mnPrPerfHistTimestamp
            DateAndTime,

        mnPrPerfHistElapsedSecs
            Counter,

        mnPrPerfHistDowntime
            Counter,

        mnPrPerfHistASs
            Counter,

        mnPrPerfHistUSs
            Counter,

        mnPrPerfHistESs
            Counter,

        mnPrPerfHistSESs
            Counter,

        mnPrPerfHistTotalBlocks
            Display64,

        mnPrPerfHistErrBlocks
            Display64,

        mnPrPerfHistErrBackBlocks
            Display64,

        mnPrPerfHistTotalBytes
            Display64,

        mnPrPerfHistErrBytes
            Display64,

        mnPrPerfHistTotalBackBytes
            Display64,

        mnPrPerfHistErrBackBytes
            Display64,

        mnPrPerfHistESRatio
            DisplayString,

        mnPrPerfHistSESRatio
            DisplayString,

        mnPrPerfHistBER
            DisplayString,

        mnPrPerfHistBBER
            DisplayString,

        mnPrPerfHistTxPower
            INTEGER,

        mnPrPerfHistTxPowerMin
            INTEGER,

        mnPrPerfHistTxPowerMax
            INTEGER,

        mnPrPerfHistTxPowerAvg
            DisplayString,

        mnPrPerfHistRSL
            INTEGER,

        mnPrPerfHistRSLMin
            INTEGER,

        mnPrPerfHistRSLMax
            INTEGER,

        mnPrPerfHistRSLAvg
            DisplayString,

        mnPrPerfHistAlarmBMP
            Display64
    }

mnPrPerfHistIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..99999)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Performance History Index."
    ::= { mnPrPerfHistEntry  1 }

mnPrPerfHistTimestamp OBJECT-TYPE
    SYNTAX  DateAndTime
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The real-time clock value at the time this sample was taken.
            The 8-OCTET variant (no time zone information) is used, and
            deci-seconds is always 0:
               field  octets  contents                  range
               _____  ______  ________                  _____
                 1      1-2   year                      0..65536
                              (in network byte order)
                 2       3    month                     1..12
                 3       4    day                       1..31
                 4       5    hour                      0..23
                 5       6    minutes                   0..59
                 6       7    seconds                   0..60
                              (use 60 for leap-second)
                 7       8    deci-seconds              0..9"
    ::= { mnPrPerfHistEntry  2 }

mnPrPerfHistElapsedSecs OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of seconds since the previous sample was taken."
    ::= { mnPrPerfHistEntry  3 }

mnPrPerfHistDowntime OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of seconds of downtime for the radio since the
            previous sample was taken."
    ::= { mnPrPerfHistEntry  4 }

mnPrPerfHistASs OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 Available Seconds observed for the
            radio or tributary interface in question since the previous sample
            was taken."
    ::= { mnPrPerfHistEntry  5 }

mnPrPerfHistUSs OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 Unavailable Seconds observed for the
            radio or tributary interface in question since the previous sample
            was taken."
    ::= { mnPrPerfHistEntry  6 }

mnPrPerfHistESs OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 Errored Seconds observed for the
            radio or tributary interface in question since the previous sample
            was taken."
    ::= { mnPrPerfHistEntry  7 }

mnPrPerfHistSESs OBJECT-TYPE
    SYNTAX  Counter    -- UNITS seconds
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 Severely Errored Seconds observed for the
            radio or tributary interface in question since the previous sample
            was taken."
    ::= { mnPrPerfHistEntry  8 }

mnPrPerfHistTotalBlocks OBJECT-TYPE
    SYNTAX  Display64    -- UNITS blocks
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 blocks passed by the
            radio or tributary interface in question since the previous sample
            was taken.  64-bit counter expressed as an ASCII string."
    ::= { mnPrPerfHistEntry  9 }

mnPrPerfHistErrBlocks OBJECT-TYPE
    SYNTAX  Display64    -- UNITS block errors
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 errored blocks observed by the
            radio or tributary interface in question since the previous sample
            was taken.  64-bit counter expressed as an ASCII string."
    ::= { mnPrPerfHistEntry  10 }

mnPrPerfHistErrBackBlocks OBJECT-TYPE
    SYNTAX  Display64    -- UNITS block errors
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 background block errors observed by the
            radio or tributary interface in question since the previous sample
            was taken.  64-bit counter expressed as an ASCII string."
    ::= { mnPrPerfHistEntry  11 }

mnPrPerfHistTotalBytes OBJECT-TYPE
    SYNTAX  Display64    -- UNITS bytes
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 bytes passed by the
            radio or tributary interface in question since the previous sample
            was taken.  64-bit counter expressed as an ASCII string."
    ::= { mnPrPerfHistEntry  12 }

mnPrPerfHistErrBytes OBJECT-TYPE
    SYNTAX  Display64    -- UNITS byte errors
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 errored bytes observed by the
            radio or tributary interface in question since the previous sample
            was taken.  64-bit counter expressed as an ASCII string."
    ::= { mnPrPerfHistEntry  13 }

mnPrPerfHistTotalBackBytes OBJECT-TYPE
    SYNTAX  Display64    -- UNITS bytes
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 background bytes passed by the
            radio or tributary interface in question since the previous sample
            was taken.  64-bit counter expressed as an ASCII string."
    ::= { mnPrPerfHistEntry  14 }

mnPrPerfHistErrBackBytes OBJECT-TYPE
    SYNTAX  Display64    -- UNITS byte errors
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The count of G.826 errored background bytes observed by the
            radio or tributary interface in question since the previous sample
            was taken.  64-bit counter expressed as an ASCII string."
    ::= { mnPrPerfHistEntry  15 }

mnPrPerfHistESRatio OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Standard G.826 ratio of Errored Seconds / Available Seconds for
            the radio or interface in question, over the previous sample
            period.  Expressed as a string in the format 'n.nnE-mm'."
    ::= { mnPrPerfHistEntry  16 }

mnPrPerfHistSESRatio OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Standard G.826 ratio of Severely Errored Seconds / Available
            Seconds for the radio or interface in question, over the
            previous sample period.
            Expressed as a string in the format 'n.nnE-mm'."
    ::= { mnPrPerfHistEntry  17 }

mnPrPerfHistBER OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Bit Error Rate for the radio or interface in question, over the
            previous sample period.  Bit Error Rate is expressed as
            a string in the format n.nnE-mm."
    ::= { mnPrPerfHistEntry  18 }

mnPrPerfHistBBER OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Background Bit Error Rate for the radio or interface in question,
            over the previous sample period.  Bit Error Rate is expressed as
            a string in the format n.nnE-mm.  This is the same as the normal
            BER, but using only background bit errors (bit errors in seconds
            that are not severely errored), not all bit errors."
    ::= { mnPrPerfHistEntry  19 }

mnPrPerfHistTxPower OBJECT-TYPE
    SYNTAX  INTEGER (-110..30)   -- UNITS dBm
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The current transmit power for this radio in dBm,
            when this sample was taken.
            0 is returned if the row refers to a tributary."
    ::= { mnPrPerfHistEntry  20 }

mnPrPerfHistTxPowerMin OBJECT-TYPE
    SYNTAX  INTEGER (-110..30)   -- UNITS dBm
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The minimum transmit power for this radio in dBm,
            over the previous sample period.
            0 is returned if the row refers to a tributary."
    ::= { mnPrPerfHistEntry  21 }

mnPrPerfHistTxPowerMax OBJECT-TYPE
    SYNTAX  INTEGER (-110..30)   -- UNITS dBm
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The maximum transmit power for this radio in dBm,
            over the previous sample period.
            0 is returned if the row refers to a tributary."
    ::= { mnPrPerfHistEntry  22 }

mnPrPerfHistTxPowerAvg OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The average transmit power for this radio in dBm,
            over the previous sample period. Format: '-xx.x'.
            '' is returned if the row refers to a tributary."
    ::= { mnPrPerfHistEntry  23 }

mnPrPerfHistRSL OBJECT-TYPE
    SYNTAX  INTEGER (-100..0)   -- UNITS dBm
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The RSL for this radio in dBm,
            when this sample was taken.
            0 is returned if the row refers to a tributary."
    ::= { mnPrPerfHistEntry  24 }

mnPrPerfHistRSLMin OBJECT-TYPE
    SYNTAX  INTEGER (-100..0)   -- UNITS dBm
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The minimum RSL for this radio in dBm,
            over the previous sample period.
            0 is returned if the row refers to a tributary."
    ::= { mnPrPerfHistEntry  25 }

mnPrPerfHistRSLMax OBJECT-TYPE
    SYNTAX  INTEGER (-100..0)   -- UNITS dBm
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The maximum RSL for this radio in dBm,
            over the previous sample period.
            0 is returned if the row refers to a tributary."
    ::= { mnPrPerfHistEntry  26 }

mnPrPerfHistRSLAvg OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The average RSL for this radio in dBm,
            over the previous sample. Format: '-xx.x'.
            '' is returned if the row refers to a tributary."
    ::= { mnPrPerfHistEntry  27 }

mnPrPerfHistAlarmBMP OBJECT-TYPE
    SYNTAX  Display64    
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The Decimal value for the bitmap of alarms for this interval.
            Bit definitions, starting at LSB:
            0-Major, 1-Minor, 2-LinkDown, 3-RXRSL,
            4-RXBER6, 5-RXBER3, 6-RXMUXFAIL, 7-TERMTERM,
            8-DATA_TX, 9-RADIO_TX, 10-DATA_RX, 11-RADIO_RX,
            12-MAINT_CTRL, 13-EXTRN6, 14-RELAY3, 15-RELAY4,
            16-APCPOW, 17-BERCUS, 18-RXMDM"
    ::= { mnPrPerfHistEntry  28 }


mnPrPerfHistCsvHdrTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrPerfHistCsvHdrEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table that contains performance statistics variable names
            currently selected for sampling. This table contains
            a comma separated values string containing all sampled performance
            variable names in a single row."
    ::= { mnPrPerfHistObjects  2 }

mnPrPerfHistCsvHdrEntry OBJECT-TYPE
    SYNTAX  MnPrPerfHistCsvHdrEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "The column header names for a set of performance statistics
           pertaining to a single radio or interface during a previous
           period of time in CSV (comma separated values) format."
    INDEX   { mnInterfaceIndex }
    ::= { mnPrPerfHistCsvHdrTable  1 }

MnPrPerfHistCsvHdrEntry ::=
    SEQUENCE {
        mnPrPerfHistCsvHdr
            DisplayString
    }

mnPrPerfHistCsvHdr OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The column headers for the set of performance statistics selected
           for history collection in CSV (comma separated values) format."
    ::= { mnPrPerfHistCsvHdrEntry  1 }


mnPrPerfHistCsvDataTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrPerfHistCsvDataEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table that contains performance statistics samples taken over
            a period of time leading up to the present. This table contains
            a comma separated values string containing all sampled performance
            variable values in a row for each sample available from the
            history collection."
    ::= { mnPrPerfHistObjects  3 }


mnPrPerfHistCsvDataEntry OBJECT-TYPE
    SYNTAX  MnPrPerfHistCsvDataEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of performance statistics pertaining to a single radio or
           interface during a previous period of time in CSV (comma
           separated values) format."
    INDEX   { mnInterfaceIndex, mnPrPerfHistIndex }
    ::= { mnPrPerfHistCsvDataTable  1 }

MnPrPerfHistCsvDataEntry ::=
    SEQUENCE {
        mnPrPerfHistCsvData
            DisplayString
    }

mnPrPerfHistCsvData OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "A set of performance statistics pertaining to a single radio or
           interface during a previous period of time in CSV (comma
           separated values) format."
    ::= { mnPrPerfHistCsvDataEntry  1 }





-------------------------------------------------------------------------------
-- Radio Control Table **
-------------------------------------------------------------------------------

mnPrRadCtlTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrRadCtlEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing objects used to control the radio and
            monitor the effects of that control.  These controls are
            generally for diagnostic purposes, and are not saved in
            flash, so they do not persist after the radio re-initializes."
    ::= { mnPrControlObjects  1 }

mnPrRadCtlEntry OBJECT-TYPE
    SYNTAX  MnPrRadCtlEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "Control objects for one radio in the link."
    INDEX   { mnRadioIndex }
    ::= { mnPrRadCtlTable  1 }

MnPrRadCtlEntry ::=
    SEQUENCE {
        mnPrRadCtlDigAggLoopback
            TruthValue,

        mnPrRadCtlBERTTxPattern
            INTEGER,

        mnPrRadCtlBERTTimeString
            DisplayString,

        mnPrRadCtlBERTTotal
            Display64,

        mnPrRadCtlBERTErrors
            Display64,

        mnPrRadCtlBERTBER
            DisplayString,

        mnPrRadCtrDigAggLoopTime
            INTEGER,

        mnPrRadCtlODUMute
            TruthValue,

        mnPrRadCtlODUMuteTime
            INTEGER

    }

mnPrRadCtlDigAggLoopback OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "If set to 'True', enables digital aggregate loopback (loops
            IDU's entire aggregate digital output signal back into IDU.)"
    ::= { mnPrRadCtlEntry  1 }

mnPrRadCtlBERTTxPattern OBJECT-TYPE
    SYNTAX  INTEGER {
                 disableBERT(1),
                 pseudoRandomNumber(2)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Enables or disables IDU's Internal Aggregate BER Tester (BERT).
            Power-up default is 'disableBERT(1)'.  When BERT is enabled, all
            the associated read-only variables are set to thier initial values (0).
            When the BERT is disabled, the variables are frozen."
    ::= { mnPrRadCtlEntry  2 }

mnPrRadCtlBERTTimeString OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The elapsed time since the BERT was enabled.
            Format: `000d 00:00:00'."
    ::= { mnPrRadCtlEntry  3 }

mnPrRadCtlBERTTotal OBJECT-TYPE
    SYNTAX  Display64    -- UNITS bits
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The total count of bits received by the BERT receiver since
            the BERT was enabled.  Initial value is '0'."
    ::= { mnPrRadCtlEntry  4 }

mnPrRadCtlBERTErrors OBJECT-TYPE
    SYNTAX  Display64    -- UNITS bits
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The total count of ERRORRED bits received by the BERT receiver since
            the BERT was enabled.    Initial value is '0'."
    ::= { mnPrRadCtlEntry  5 }

mnPrRadCtlBERTBER OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Bit Error Rate seen by the BERT receiver for the entire period from when
            the BERT was enabled to the present.  Format n.nnnnnnE-mm.
            Initial value is '0.000000E-00'."
    ::= { mnPrRadCtlEntry  6 }

mnPrRadCtrDigAggLoopTime OBJECT-TYPE
    SYNTAX  INTEGER (0..3600)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This is the time in seconds that the aggregate loopback will stay on.  A value
            of 0 indicates that the loopback will stay on forever.  The maximum value is
            3600 (one hour)."
    ::= { mnPrRadCtlEntry 7 }

mnPrRadCtlODUMute OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "If TRUE, ODU is muted.  Note that this is the user initiated mute
           state which is saved in flash, so mute state persists across
           reboots. Also note that mnPrODUConfMute can also cause the ODU to be
           muted based on the online state of the IDU.
           
           UserMute  ProtectionMute   mnPrRadCtlODUMute  mnPrODUConfMute  EM Mute State
              -            -               False              False         Online
              -            X               False              True          Standby
              X            -               True               True          Muted
              X            X               True               True          Muted
           "
    ::= { mnPrRadCtlEntry  8 }


mnPrRadCtlODUMuteTime OBJECT-TYPE
    SYNTAX  INTEGER (0..3600)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This is the time in seconds that the ODU will remain muted.  A
           value of 0 indicates that the mute will stay on forever.  The
           maximum value is 3600 (one hour)."
    ::= { mnPrRadCtlEntry 9 }


-------------------------------------------------------------------------------
-- LIM Control Table **
-------------------------------------------------------------------------------

mnPrLIMCtlTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrLIMCtlEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing objects used to control the LIM and
            monitor the effects of that control.  These controls are
            generally for diagnostic purposes, and are not saved in
            flash, so they do not persist after the radio re-initializes."
    ::= { mnPrControlObjects  2 }

mnPrLIMCtlEntry OBJECT-TYPE
    SYNTAX  MnPrLIMCtlEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "Control objects for one radio in the link."
    INDEX   { mnRadioIndex, mnLIMIndex }
    ::= { mnPrLIMCtlTable  1 }

MnPrLIMCtlEntry ::=
    SEQUENCE {
        mnLIMIndex
            INTEGER,

        mnPrLIMCtlBERTTrib
            INTEGER,

        mnPrLIMCtlBERTTxPattern
            INTEGER,

        mnPrLIMCtlBERTTimeString
            DisplayString,

        mnPrLIMCtlBERTTotal
            Display64,

        mnPrLIMCtlBERTErrors
            Display64,

        mnPrLIMCtlBERTBER
            DisplayString

    }

mnLIMIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..9)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "1=LIM A (uBus on MX), 2=LIM B (TLI on MX), 3=Integrated Ethernet (on MX), 
            9=Integrated Ethernet (on AMT-M, limited cases, not in this table)"
    ::= { mnPrLIMCtlEntry  1 }

mnPrLIMCtlBERTTrib OBJECT-TYPE
    SYNTAX  INTEGER (1..120)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Specifies what Tributary within the LIM that the Internal
            LIM BER Tester (BERT) will operate on.  Power-up default
            is 1."
    ::= { mnPrLIMCtlEntry  2 }

mnPrLIMCtlBERTTxPattern OBJECT-TYPE
    SYNTAX  INTEGER {
                 disableBERT(1),
                 pseudoRandomNumber(2)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Enables or disables LIM's Internal Tributary BER Tester (BERT).
            Power-up default is 'disableBERT(1)'.  When BERT is enabled, all
            the associated read-only variables are set to thier initial values (0).
            When the BERT is disabled, the variables are frozen."
    ::= { mnPrLIMCtlEntry  3 }

mnPrLIMCtlBERTTimeString OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The elapsed time since the BERT was enabled.
            Format: `000d 00:00:00'."
    ::= { mnPrLIMCtlEntry  4 }

mnPrLIMCtlBERTTotal OBJECT-TYPE
    SYNTAX  Display64    -- UNITS bits
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The total count of bits received by the BERT receiver since
            the BERT was enabled.  Initial value is '0'."
    ::= { mnPrLIMCtlEntry  5 }

mnPrLIMCtlBERTErrors OBJECT-TYPE
    SYNTAX  Display64    -- UNITS bits
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The total count of ERRORRED bits received by the BERT receiver since
            the BERT was enabled.    Initial value is '0'."
    ::= { mnPrLIMCtlEntry  6 }

mnPrLIMCtlBERTBER OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Bit Error Rate seen by the BERT receiver for the entire period from when
            the BERT was enabled to the present.  Format n.nnnnnnE-mm.
            Initial value is '0.000000E-00'."
    ::= { mnPrLIMCtlEntry  7 }



-------------------------------------------------------------------------------
-- Tributary Control Table **
-------------------------------------------------------------------------------

mnPrTribCtlTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrTribCtlEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing objects used to control the tributaries.
            These controls are generally for diagnostic purposes, and are
            not saved in flash, so they do not persist after the radio
            re-initializes."
    ::= { mnPrControlObjects  3 }

mnPrTribCtlEntry OBJECT-TYPE
    SYNTAX  MnPrTribCtlEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "Control objects for one tributary in the link."
    INDEX   { mnTribIndex }
    ::= { mnPrTribCtlTable  1 }

MnPrTribCtlEntry ::=
    SEQUENCE {
        mnTribIndex
            INTEGER,

        mnPrTribCtlLocalLoopback
            TruthValue,

        mnPrTribCtlRemoteLoopback
            TruthValue

    }

mnTribIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..9999)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "rltt, where r=radio index, l=LIM # (1, 2 or 3* or 9*), and 
            tt=Tributary number on LIM:
              1203
              2101
           etc.
           If Tributary number is 00, then the index refers to the LIM itself.
           Note that MX has three Line Interfaces (LIs): uBus(1), TLI(2), and 
           Ethernet(3)"
    ::= { mnPrTribCtlEntry  1 }

mnPrTribCtlLocalLoopback OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "If set to 'True', enables tributary local loopback (loops
            incoming tributary signal back out to customer equipment.)"
    ::= { mnPrTribCtlEntry  2 }

mnPrTribCtlRemoteLoopback OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "If set to 'True', enables tributary remote loopback (loops
            outgoing tributary signal back into tributary.)"
    ::= { mnPrTribCtlEntry  3 }


-------------------------------------------------------------------------------
-- Inventory Table
-------------------------------------------------------------------------------

mnPrInventTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrInventEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing inventory information and service state
             about each component within this link. The service state
             is provided for components that exist within the product,
             but are disabled for some reason, usually due to feature 
             license restrictions."
    ::= { mnPrConfigurationObjects  1 }

mnPrInventEntry OBJECT-TYPE
    SYNTAX  MnPrInventEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           " "
    INDEX   { mnRadioIndex, mnPrInventCompIndex }
    ::= { mnPrInventTable  1 }

MnPrInventEntry ::=
    SEQUENCE {
        mnPrInventCompIndex
            INTEGER,

        mnPrInventCompText
            DisplayString,

        mnPrInventModPartText
            DisplayString,

        mnPrInventCheckSumText
            DisplayString,

        mnPrInventVersionText
            DisplayString,

        mnPrInventSerialText
            DisplayString,

        mnPrInventCompStatus
            INTEGER,

        mnPrInventCompType
            INTEGER
    }

mnPrInventCompIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..9999)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Component Index
            5 = Sales Order
           10 = ODU
           11 = ODU Firmware
           20 = IDU
           21 = IDU Firmware
           22 = IF Board
           23 = IDU Power Supply
           26 = CU SIM Card (MX)
           30 = LIMA
           40 = LIMB
           43 = Backplane (MX)
           44 = I/O Board (MX)
           50 = Image 1 Firmware (AMT), Bootloader (AMT-L and later)
           51 = Image 2 Firmware (AMT), Image 1 Firmware (AMT-L and later)
           52 = Image 2 Firmware (AMT-L and later)
           60 = TX FPGA Firmware (AMT-M)
           61 = RX FPGA Firmware (AMT-M)
           62 = 16 DS1/E1 LIM Firmware (AMT-M)
           63 = E3 LIM Firmware (AMT-M)
           64 = 100BT LIM Firmware (AMT-M)
           65 = 32 DS1/E1 LIM Firmware (AMT-M, MX)
           66 = DS3 LIM Firmware (AMT-M, MX)
           67 = 155Mb LIM Firmware  (AMT-M, MX)
           68 = Microbus LIM Firmware (AMT-M)
           69 = GigE LIM Firmware (AMT-M)
           70 = 32 DS1/E1 SHARP LIM Firmware (AMT-M (..131) and MX (..150))
           77 = LIM A GigE Switch Application (AMT-M)
           78 = LIM B GigE Switch Application (AMT-M)
           79 = Microbus LI Firmware (MX)
           80 = Mux/Demux FPGA F/W (MX)
           81 = Modem Application F/W (MX)           
           82 = Active Modem Configuration (MX)
           83 = Default Modem Configuration (MX)
           84 = Standard Modem Catalog (MX)
           86 = 8GigE + 32DS1/E1 Hybrid TLI Firmware (MX)
           87 = 4DS3 + 32DS1 Hybrid TLI Firmware (MX)
          100 = Mux/Demux FPGA F/W [App] (MX)
          101 = Modem Application F/W [App] (MX)           
           etc."
    ::= { mnPrInventEntry  1 }

mnPrInventCompText OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The name of the component."
    ::= { mnPrInventEntry  2 }

mnPrInventModPartText OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The text form of the Model ID / Part Number (if any)."
    ::= { mnPrInventEntry  3 }

mnPrInventCheckSumText OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The text form of the code checksum (if any)."
    ::= { mnPrInventEntry  4 }

mnPrInventVersionText OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The text form of the Version (if any)."
    ::= { mnPrInventEntry  5 }

mnPrInventSerialText OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The text form of the Serial Number (if any)."
    ::= { mnPrInventEntry  7 }

mnPrInventCompStatus OBJECT-TYPE
     SYNTAX  INTEGER {
                 unknown(1),
                 outOfService(2),
                 inService(3)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The service state of the component."
    ::= { mnPrInventEntry  8 }

mnPrInventCompType OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Provides more information about a component.  For example
            in LIM rows, this column contains the LIM hardware type code."
    ::= { mnPrInventEntry  9 }

-------------------------------------------------------------------------------
-- ODU Configuration Table
-------------------------------------------------------------------------------

mnPrODUConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrODUConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing configuration parameters for
             the ODUs in the link"
    ::= { mnPrConfigurationObjects  2 }

mnPrODUConfEntry OBJECT-TYPE
    SYNTAX  MnPrODUConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of configuration parameters for a single
             ODU within the link."
    INDEX   { mnRadioIndex }
    ::= { mnPrODUConfTable  1 }

MnPrODUConfEntry ::=
    SEQUENCE {
        mnPrODUConfTxFreq
            INTEGER,

        mnPrODUConfRxFreq
            INTEGER,

        mnPrODUConfTxPower
            INTEGER,

        mnPrODUConfATPCEnable
            TruthValue,

        mnPrODUConfATPCTargetRSL
            INTEGER,

        mnPrODUConfMute
            TruthValue,
            
        mnPrODUConfCurInversion
            INTEGER,

        mnPrODUConfDefInversion
            INTEGER
    }

mnPrODUConfTxFreq OBJECT-TYPE
    SYNTAX  INTEGER -- UNITS kHz
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Tx Freq in kHz"
    ::= { mnPrODUConfEntry  1 }

mnPrODUConfRxFreq OBJECT-TYPE
    SYNTAX  INTEGER -- UNITS kHz
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Rx Freq in kHz"
    ::= { mnPrODUConfEntry  2 }

mnPrODUConfTxPower OBJECT-TYPE
    SYNTAX  INTEGER  -- UNITS dBm
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Tx Power, in dBm, for the transmitter of
             this radio (when TxPower is controlled
             manually, not by ATPC).  Under ATPC, this is 
             the maximum allowed TX Power."
    ::= { mnPrODUConfEntry  3 }

mnPrODUConfATPCEnable OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to administratively
             enable or disable the ATPC (Automatic Power
             Control) function."
    ::= { mnPrODUConfEntry  4 }

mnPrODUConfATPCTargetRSL OBJECT-TYPE
    SYNTAX  INTEGER    -- UNITS dBm
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "The desired received signal level (RSL) in dBm.  The
             value contained in this object is used by the ATPC
             (Automatic Power Control) function to obtain
             the desired RSL on the remote side of the link."
    ::= { mnPrODUConfEntry  5 }

mnPrODUConfMute OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "If TRUE, ODU is muted as a hot standby.  Note that this is NOT
           saved in flash, but follows the online state of the IDU. For user
           initiated ODU mute refer to mnPrRadCtlODUMute."
    ::= { mnPrODUConfEntry  6 }

mnPrODUConfCurInversion OBJECT-TYPE
    SYNTAX  INTEGER {
                 defaultInversion(1),
                 noInversion(2),
                 invertRx(3),
                 invertTx(4),
                 invertBoth(5)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the
           spectral inversion of the signals going to and 
           from the RFU.  'defaultInversion' is the factory
           default value: in this case the Rx and Tx inversion
           are set to default values associated with each
           type of RFU."
    ::= { mnPrODUConfEntry 7 }

mnPrODUConfDefInversion OBJECT-TYPE
    SYNTAX  INTEGER {
                 noInversion(2),
                 invertRx(3),
                 invertTx(4),
                 invertBoth(5)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The default inversion for the current ODU."
    ::= { mnPrODUConfEntry 8 }


-------------------------------------------------------------------------------
-- IDU Configuration Table
-------------------------------------------------------------------------------

mnPrIDUConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrIDUConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing configuration parameters for
             the IDUs in the link"
    ::= { mnPrConfigurationObjects  3 }

mnPrIDUConfEntry OBJECT-TYPE
    SYNTAX  MnPrIDUConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of configuration parameters for a single
             IDU within the link."
    INDEX   { mnRadioIndex }
    ::= { mnPrIDUConfTable  1 }

MnPrIDUConfEntry ::=
    SEQUENCE {

        mnPrIDUConfProtMode
            INTEGER,

        mnPrIDUConfProtOnlineRequest
            TruthValue,

        mnPrIDUConfOrderwireCode
            DisplayString,

        mnPrIDUConfOrderwireMode
            INTEGER,

        mnPrIDUConfAUX1Rate
            INTEGER,

        mnPrIDUConfAUX2Rate
            INTEGER,

        mnPrIDUConfCraftBaud
            INTEGER,

        mnPrIDUConfProposedCapacity
            INTEGER,

        mnPrIDUConfAllocateLimA
            INTEGER,

        mnPrIDUConfProtTwinAddress
            IpAddress,

        mnPrIDUConfIFBandwidthProposed
            IfBandwidth,

        mnPrIDUConfIFBandwidthConf
            IfBandwidth,

        mnPrIDUConfNmsPortSpeed
            LanSpeed,

        mnPrIDUConfNmsPortMode
            INTEGER,

        mnPrIDUConfCapacityConf       
            INTEGER,

        mnPrIDUConfCapacityProp       
            INTEGER,

        mnPrIDUConfIntEthStatusInst   
            INTEGER,

        mnPrIDUConfIntEthStatusConf   
            INTEGER,

        mnPrIDUConfIntEthStatusProp   
            INTEGER,

        mnPrIDUConfIntEthCapacityInst 
            INTEGER,

        mnPrIDUConfIntEthCapacityConf 
            INTEGER,

        mnPrIDUConfIntEthCapacityProp 
            INTEGER,
        
        mnPrIDUConfLoopSwitchMode
            INTEGER,
            
        mnPrIDUConfStatLicCapacity
            INTEGER    

    }


mnPrIDUConfProtMode OBJECT-TYPE
    SYNTAX  INTEGER {
                 unprotected(1),
                 hotStandbyProtected(2),
                 hsTXsdRX(3),
                 sdTXsdRX(4),
                 npTXsdRX(5),
                 fdTXfdRX(6)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the
           protection mode for this radio.  Only AMT-M
           supports modes 3-6, where:
             hs=hot standby,
             sd=space diversity, 
             np=not protected, 
             fd=frequency diversity"
    ::= { mnPrIDUConfEntry  1 }

mnPrIDUConfProtOnlineRequest OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the online
             state of the IDU.  When set to True, will request that
             the hot standby shelf switch to make this IDU the online
             IDU, regardless of alarm conditions."
    ::= { mnPrIDUConfEntry  2 }

mnPrIDUConfOrderwireCode OBJECT-TYPE
    SYNTAX  DisplayString (SIZE(1..3))
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the DTMF dialing
             code for this IDU."
    ::= { mnPrIDUConfEntry  3 }

mnPrIDUConfOrderwireMode OBJECT-TYPE
    SYNTAX  INTEGER {
                 voice(1),
                 data(2)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the orderwire as
             a Voice channel or a 64 Kbps Data channel."
    ::= { mnPrIDUConfEntry  4 }

mnPrIDUConfAUX1Rate OBJECT-TYPE
    SYNTAX  INTEGER {
                 baud9600(9600),
                 baud19200(19200)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the Auxilary channel
             1 as 9600 or 19200 baud.  (Superceded by mnPrAuxConfTable)"
    ::= { mnPrIDUConfEntry  5 }

mnPrIDUConfAUX2Rate OBJECT-TYPE
    SYNTAX  INTEGER {
                 baud9600(9600),
                 baud19200(19200)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the Auxilary channel
             2 as 9600 or 19200 baud.   (Superceded by mnPrAuxConfTable)"
    ::= { mnPrIDUConfEntry  6 }

mnPrIDUConfCraftBaud OBJECT-TYPE
    SYNTAX  INTEGER {
                 baud9600(9600),
                 baud19200(19200),
                 baud38400(38400),
                 baud57600(57600)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the craft port
             baud rate."
    ::= { mnPrIDUConfEntry  7 }

mnPrIDUConfProposedCapacity OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "This object shows the total LIM capacity for the proposed
            LIM types.  It acts as the maximum value for
            mnPrIDUConfAllocateLimA."
    ::= { mnPrIDUConfEntry 8 }

mnPrIDUConfAllocateLimA OBJECT-TYPE
    SYNTAX  INTEGER (0..100)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the data rate
            (in compressed Megabits/second) for LIM A.  This object
            only has meaning when both LIMs are configured as
            100 BaseT."
    ::= { mnPrIDUConfEntry 9 }

mnPrIDUConfProtTwinAddress OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object configures the IPv4 address of the
            twin IDU processor used in hot standby configurations."
    ::= { mnPrIDUConfEntry 10 }

mnPrIDUConfIFBandwidthProposed OBJECT-TYPE
    SYNTAX  IfBandwidth
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This is a control object (not saved in flash) that allows
             the user to specify a new value for the Configured IF Bandwidth.
             Once the proposed type instances for each LIM and the proposed 
             IF bandwidth are set correctly, the reconfigureModem system 
             command checks the proposed configuration settings, and, if 
             they are a legal combination, copies them into the Configured 
             LIM (mnPrLIMConfTypeConf) and Configured IF Bandwidth 
             (mnPrIDUConfIFBandwidthConf) object instances."
    ::= { mnPrIDUConfEntry  11 }

mnPrIDUConfIFBandwidthConf OBJECT-TYPE
    SYNTAX  IfBandwidth
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The Configured IF Bandwidth. This is saved in flash.  
             It is set only by the reconfigureModem system command, 
             which, if the proposed combination of LIM types and IF 
             Bandwidth is legal, copies the associated Proposed IF 
             Bandwidth object into this object."
    ::= { mnPrIDUConfEntry  12 }

mnPrIDUConfNmsPortSpeed OBJECT-TYPE
    SYNTAX  LanSpeed
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the LAN speed 
             settings for the NMS ports. It allows the user to enable
             auto-negotiation or set the speed and duplex settings to 
             a fixed value.  (Note: this object is used by AMT-L.
             AMT-M uses mnPrAuxEthConfTable.)"
    ::= { mnPrIDUConfEntry  13 }

mnPrIDUConfNmsPortMode OBJECT-TYPE
    SYNTAX  INTEGER {
                 mgmtOutOfBand(1),
                 mgmtInBand(2)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the NMS management
             channel to the far-end. A value of mgmtOutOfBand in this 
             object will configure the hardware such that the NMS and 
             payload ethernet data is isolated from each other. A value 
             of mgmtInBand will bridge the NMS ports to the built-in 
             ethernet payload ports."
    ::= { mnPrIDUConfEntry  14 }

mnPrIDUConfCapacityConf OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Current total configured capacity in Mb/s.  (AMT-M)"
    ::= { mnPrIDUConfEntry  19 }

mnPrIDUConfCapacityProp OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Proposed total configured capacity in Mb/s. (AMT-M)"
    ::= { mnPrIDUConfEntry  20 }

mnPrIDUConfIntEthStatusInst OBJECT-TYPE
    SYNTAX  INTEGER {
                 licensed(1),
                 unLicensed(2)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Current license status of Integrated Ethernet. (AMT-M)"
    ::= { mnPrIDUConfEntry  21 }

mnPrIDUConfIntEthStatusConf OBJECT-TYPE
    SYNTAX  INTEGER {
                 oneHundredBaseT(1),
                 notInstalled(2)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Current configured status of Integrated Ethernet. (AMT-M)"
    ::= { mnPrIDUConfEntry  22 }

mnPrIDUConfIntEthStatusProp OBJECT-TYPE
    SYNTAX  INTEGER {
                 oneHundredBaseT(1),
                 notInstalled(2)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Proposed status of Integrated Ethernet. (AMT-M)"
    ::= { mnPrIDUConfEntry  23 }

mnPrIDUConfIntEthCapacityInst OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Maximum possible capacity of Integrated Ethernet. (AMT-M)"
    ::= { mnPrIDUConfEntry  24 }

mnPrIDUConfIntEthCapacityConf OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Configured capacity of Integrated Ethernet. (AMT-M)"
    ::= { mnPrIDUConfEntry  25 }

mnPrIDUConfIntEthCapacityProp OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Proposed capacity of Integrated Ethernet. (AMT-M)"
    ::= { mnPrIDUConfEntry  26 }

mnPrIDUConfLoopSwitchMode OBJECT-TYPE
    SYNTAX  INTEGER {
                 disable(1),
                 pass(2),
                 switch(3)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Configured mode of loopswitch facility."
    ::= { mnPrIDUConfEntry  27 }

mnPrIDUConfStatLicCapacity OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Configured Station License Capacity (kbps): Radio must use this 
             exact capacity after any reconfiguration (unless this object
             is at its default value of zero, which means that no Station
             License Capacity will be enforced.)"
    ::= { mnPrIDUConfEntry  28 }



-------------------------------------------------------------------------------
-- LIM Configuration Table
-------------------------------------------------------------------------------

mnPrLIMConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrLIMConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing configuration information
             about each LIM within this link."
    ::= { mnPrConfigurationObjects  4 }

mnPrLIMConfEntry OBJECT-TYPE
    SYNTAX  MnPrLIMConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of configuration information about a
             single LIM within this link. "
    INDEX   { mnRadioIndex, mnLIMIndex }
    ::= { mnPrLIMConfTable  1 }

MnPrLIMConfEntry ::=
    SEQUENCE {
        mnPrLIMConfTypeInstalled
            LIMType,

        mnPrLIMConfTypeProposed
            LIMType,

        mnPrLIMConfTypeConf
            LIMType,

        mnPrLIMConfCapacity
            INTEGER,
            
        mnPrLIMConfCapacityInst
            INTEGER,
            
        mnPrLIMConfCapacityConf
            INTEGER,
            
        mnPrLIMConfCapacityProp
            INTEGER,
            
        mnPrLIMConfSHARPInstalled
            INTEGER

    }

mnPrLIMConfTypeInstalled OBJECT-TYPE
    SYNTAX  LIMType
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "This is a status object that states what kind of
             LIM is actually physically installed in the associated
             LIM slot."
    ::= { mnPrLIMConfEntry  1 }

mnPrLIMConfTypeProposed OBJECT-TYPE
    SYNTAX  LIMType
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This is a control object (not saved in flash) that allows
             the user to specify a new value for the Configured LIM
             type.  Once the instances for each LIM are set correctly,
             the reconfigureModem system command checks the two instances,
             and, if they are a legal combination, copies them into
             the Configured LIM (mnPrLIMConfTypeConf) object instances."
    ::= { mnPrLIMConfEntry  2 }

mnPrLIMConfTypeConf OBJECT-TYPE
    SYNTAX  LIMType
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The Configured LIM type. This is saved in flash.  It is set only
             by the reconfigureLIMs system command, which if the
             proposed combination is legal, copies the associated
             Proposed LIM Configuration object into this object."
    ::= { mnPrLIMConfEntry  3 }

mnPrLIMConfCapacity OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "This object shows the capacity of the associated LIM in Mbits/sec."
    ::= { mnPrLIMConfEntry  4 }

mnPrLIMConfCapacityInst OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Maximum possible capacity of the LIM. (AMT-M)"
    ::= { mnPrLIMConfEntry  5 }

mnPrLIMConfCapacityConf OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Currently configured capacity of the LIM.  Same as mnPrLIMConfCapacity, 
             but 32 bits (not limited to (0..255)). (AMT-M)"
    ::= { mnPrLIMConfEntry  6 }

mnPrLIMConfCapacityProp OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Currently proposed capacity of the LIM.  Replaces mnPrIduConfAllocLimA 
             (except that it is 32 bits and has instances for both LIMs.)  (AMT-M)"
    ::= { mnPrLIMConfEntry  7 }

mnPrLIMConfSHARPInstalled OBJECT-TYPE
    SYNTAX  INTEGER {
                 master(1),
                 slave(2),
                 notInstalled(3)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrLIMConfEntry  8 }


-------------------------------------------------------------------------------
-- Tributary Configuration Table
-------------------------------------------------------------------------------

mnPrTribConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrTribConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing configuration information
             about each tributary within this link."
    ::= { mnPrConfigurationObjects  5 }

mnPrTribConfEntry OBJECT-TYPE
    SYNTAX  MnPrTribConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of configuration information about a
             single tributary within this link. "
    INDEX   { mnTribIndex }
    ::= { mnPrTribConfTable  1 }

MnPrTribConfEntry ::=
    SEQUENCE {

        mnPrTribConfAdminEquipped
            TruthValue

    }

mnPrTribConfAdminEquipped OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to administratively
             configure the provisioned equipment state of this
             tributary."
    ::= { mnPrTribConfEntry  1 }


-------------------------------------------------------------------------------
-- System Configuration Table
-------------------------------------------------------------------------------

mnPrSysConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrSysConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing system configuration
             information for each radio within the link."
    ::= { mnPrConfigurationObjects  6 }

mnPrSysConfEntry OBJECT-TYPE
    SYNTAX  MnPrSysConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of system configuration information for a
             single radio within the link. "
    INDEX   { mnRadioIndex }
    ::= { mnPrSysConfTable  1 }

MnPrSysConfEntry ::=
    SEQUENCE {
        mnPrSysConfRadioName
            DisplayString,

        mnPrSysConfLocation
            DisplayString,

        mnPrSysConfContact
            DisplayString,

        mnPrSysConfDateAndTime
            DateAndTime,

        mnPrSysConfLicenseKey
            DisplayString,

        mnPrSysConfThroughPut
            INTEGER,

        mnPrSysConfTimeZone
            DisplayString,

        mnPrSysConfDaylightSavings
            TruthValue,

        mnPrSysConfDpmStatus
            INTEGER,
            
        mnPrSysConfDpmPolicy
            INTEGER,

        mnPrSysConfEncMode  
            INTEGER,

        mnPrSysConfEncPassword  
            DisplayString,

        mnPrSysConfEncFailPolicy
            INTEGER,

        mnPrSysConfFIPSKeyActivate
            TruthValue,

        mnPrSysConfFIPSMode  
            INTEGER

    }

mnPrSysConfRadioName OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "The administratively assigned name of the radio.
             The value contained in this object is also
             reported by the mnPrNotifyRadioName object, and
             by the MIB-II System Group's SysName objext."
    ::= { mnPrSysConfEntry  1 }

mnPrSysConfLocation OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "The administratively assigned physical location
             of the radio.  The value contained in this object is also
             reported by the MIB-II System Group's SysLocation objext."
    ::= { mnPrSysConfEntry  2 }

mnPrSysConfContact OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "The administratively assigned name and contact
             information of the designated responsible person
             for this radio.  An example: `G. Marconi +1 800
             555-1212, gmarconi@microwavenetworks.com'
             The value contained in this object is also
             reported by the MIB-II System Group's SysContact objext."
    ::= { mnPrSysConfEntry  3 }

mnPrSysConfDateAndTime OBJECT-TYPE
    SYNTAX  DateAndTime
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Provides a means to set and read the radio's real-time
             clock.  The 8-OCTET variant (no time zone information)
             is used, and deci-seconds is ignored on write and 0 on read:
               field  octets  contents                  range
               _____  ______  ________                  _____
                 1      1-2   year                      0..65536
                              (in network byte order)
                 2       3    month                     1..12
                 3       4    day                       1..31
                 4       5    hour                      0..23
                 5       6    minutes                   0..59
                 6       7    seconds                   0..60
                              (use 60 for leap-second)
                 7       8    deci-seconds              0..9"
    ::= { mnPrSysConfEntry  4 }

mnPrSysConfLicenseKey OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "The upgradeable license key for this radio which 
             unlocks enhanced features."
    ::= { mnPrSysConfEntry  5 }

mnPrSysConfThroughPut OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "This object reports the maximum throughput in 
             mega-bits per second that is licensed for this radio."
    ::= { mnPrSysConfEntry  6 }

mnPrSysConfTimeZone OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Offset in hours and minutes between the Universal Coordinated Time 
             (UTC) that SNTP uses and the standard local time that the radio 
             will display.Example: +05:30  (5 hours, 30 minutes west of UTC).
             Leading '+' and zeros are assumed, as is minutes=0,  
             so '5' == '+05:00'."
    ::= { mnPrSysConfEntry  7 }

mnPrSysConfDaylightSavings OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Daylight Savings time is in effect: local time will be calculated by
             adding the timezone offset plus one hour to the UTC time that
             SNTP supplies."
    ::= { mnPrSysConfEntry  8 }

mnPrSysConfDpmStatus OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "DPM_COMPATIBILITY_LIM_A_MASK       0x00000001  LIM A only 
            DPM_COMPATIBILITY_LIM_B_MASK       0x00000002  LIM B only          
            DPM_COMPATIBILITY_LIM_CTRL_MASK    0x00000004  LIM controller only 
            DPM_COMPATIBILITY_MAINBD_MASK      0x00000004  mainboard only 
            DPM_COMPATIBILITY_LICENSE_MASK     0x00000100  DPM feature license only 
            DPM_COMPATIBILITY_POLICY_MASK      0x00000200  set if DPM policy != disabled 
            DPM_COMPATIBILITY_LIMCENTRIC_MASK  0x00000800  set if DPM disabled (either no license 
            DPM_STATUS_EXTENDED_POLICY         0x00001000  001 for 1.G 
            DPM_STATUS_EXT_POLICY_MASK         0x00007000  Extended Policy Compatibility Level Mask 
           "
    ::= { mnPrSysConfEntry  9 }

mnPrSysConfDpmPolicy OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Lower nibble: 
               1=DPM enabled (standard configuration)
               2=DPM disabled (LIM-centric)
            The rest of the 32bit word will be used as a bit map:
               DPM_POLICY_EXTENDED_BIT_ENABLE       0x00000010
               DPM_POLICY_HARD_MODEM_LOCK           0x00000020
           "           
    ::= { mnPrSysConfEntry  10 }

mnPrSysConfEncMode OBJECT-TYPE
    SYNTAX  INTEGER {
                 disable(1),
                 aes128(2),
                 aes192(3),
                 aes256(4),
                 armTransition (5)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Changing the encryption mode in FIPS mode requires armTransition
            to be received before the new mode can be set. Futher it requires
            the new mode to be set within 10 seconds of the armTransition set.
            If the system is not in FIPS mode setting armTransition has no
            effect and setting to any encryption level other than armTransition
            will cause the new level to be set.
           "
    ::= { mnPrSysConfEntry  11 } 

mnPrSysConfEncPassword OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "
           "           
    ::= { mnPrSysConfEntry  12 } 

mnPrSysConfEncFailPolicy OBJECT-TYPE
    SYNTAX  INTEGER {
                 nofallback(1),
                 fallback(2)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "
           "           
    ::= { mnPrSysConfEntry  13 } 

mnPrSysConfFIPSKeyActivate OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "
           "
    ::= { mnPrSysConfEntry  14 }

mnPrSysConfFIPSMode OBJECT-TYPE
    SYNTAX  INTEGER {
                 disable(1),
                 enable(2)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Parameter that determines whether FIPS-140-2 security mode is enabled 
             on the radio. If FIPS-140-2 security mode is enabled, this constrains 
             the security behavior of the radios in a number of ways.  Note that 
             only admin users may change this object, and the object can only be 
             changed on the local radio.  Changing this object has a number of 
             side-effects...
           "
    ::= { mnPrSysConfEntry  15 }
    
-- mnPrSysConfFIPSKeyHexP not in MIB, would be entry 16 if it were...

-------------------------------------------------------------------------------
-- User Configuration Table
-------------------------------------------------------------------------------

--In the initial release, this table with have only these fields, and
--will have a fixed set of rows, one of each access level:
--
--         Username      Password           AccessLevel
--         (read-only)   ('***' on read,    (read-only, returns 999)
--                        write by self or
--                        admin only)
--                       (default shown)
--         ==========    =================  =================
--         guest                            guest(2)
--         admin         mni                admin(6)
--         factory       <secret>           factory(10)
--
--In later versions, if we choose, we can add the ability to add/delete rows (adding
--a RowStatus column then.)

mnPrUserConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrUserConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "List of users for this radio."
    ::= { mnPrConfigurationObjects 7 }

mnPrUserConfEntry OBJECT-TYPE
    SYNTAX  MnPrUserConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "Information about one user of this radio."
    INDEX   { mnRadioIndex, mnPrUserConfIndex }
    ::= { mnPrUserConfTable 1 }

MnPrUserConfEntry ::=
    SEQUENCE {
        mnPrUserConfIndex
            INTEGER,

        mnPrUserConfUsername
            DisplayString,

        mnPrUserConfPasswordSet
            DisplayString,

        mnPrUserConfAccessLevel
            INTEGER,

        mnPrUserConfAuthProtocol
            INTEGER,

        mnPrUserConfPrivProtocol
            INTEGER,

        mnPrUserConfPrivPwdSet
            DisplayString

    }

mnPrUserConfIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..64)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
            "The index of the user database that contains
             this row (factory = 1, admin = 2, guest = 3)"
    ::= { mnPrUserConfEntry 1 }

mnPrUserConfUsername OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The user's user name."
    ::= { mnPrUserConfEntry 2 }

mnPrUserConfPasswordSet OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The user's password.  Returns '***' on read, or null
              string if the password is not set.  This is used as
              the CLI password and is used for SNMPv1 and SNMPv2c
              community string construction ('|<username>|<password>'
              and to create SNMPv3 secret authentication key.)"
    ::= { mnPrUserConfEntry 3 }

mnPrUserConfAccessLevel OBJECT-TYPE
    SYNTAX  AccessLevel
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The user's access level."
    ::= { mnPrUserConfEntry 4 }

mnPrUserConfAuthProtocol OBJECT-TYPE
    SYNTAX  INTEGER {
                 noAuthProtocol(1),
                 md5AuthProtocol(2),
                 shaAuthProtocol(3)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "  (see table)
           "           
    ::= { mnPrUserConfEntry  5 }
            
mnPrUserConfPrivProtocol OBJECT-TYPE
    SYNTAX  INTEGER {
                 noPrivProtocol(1),
                 desPrivProtocol(2),
                 aes128PrivProtocol(4)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "  (see table)    3DES  192 256
           "           
    ::= { mnPrUserConfEntry  6 }

mnPrUserConfPrivPwdSet OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The password used to create the SNMPv3 secret privacy 
              key.  Returns '***' on read, or null string if the password 
              is not set (which is the default case).  If this has not 
              been set, and is a null string, SNMPv3 just uses the value  
              of the SNMPv3 authentication password (see 
              mnPrUserConfPasswordSet, above) to create the SNMPv3 
              secret privacy key."
    ::= { mnPrUserConfEntry 7 }

-------------------------------------------------------------------------------
-- Alarm Configuration Table
-------------------------------------------------------------------------------

mnPrAlarmConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrAlarmConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing alarm configuration information
             for each radio within the link."
    ::= { mnPrConfigurationObjects 8 }

mnPrAlarmConfEntry OBJECT-TYPE
    SYNTAX  MnPrAlarmConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of alarm configuration information for a
             single alarm on a single radio within the link."
    INDEX { mnRadioIndex, mnAlarmIndex }
    ::= { mnPrAlarmConfTable 1 }

MnPrAlarmConfEntry ::=
    SEQUENCE {
        mnAlarmIndex
            INTEGER,

        mnPrAlarmConfName
            DisplayString,

        mnPrAlarmConfUserName
            DisplayString,

        mnPrAlarmConfAbrev
            DisplayString,

        mnPrAlarmConfMap
            INTEGER,

        mnPrAlarmConfCircuitType
            INTEGER,

        mnPrAlarmConfThreshold
            INTEGER,

        mnPrAlarmConfSet
            TruthValue
    }

mnAlarmIndex OBJECT-TYPE
    SYNTAX  INTEGER (0..65535)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "This object identifies the alarm.  The index is the
              same number that is sent in the current alarm list."
    ::= { mnPrAlarmConfEntry  1 }

mnPrAlarmConfName OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "This is the full name of the alarm."
    ::= { mnPrAlarmConfEntry 2 }

mnPrAlarmConfUserName OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Portion of the alarm name that may be modified by the
              user.  Only valid for external and relay alarms."
    ::= { mnPrAlarmConfEntry 3 }

mnPrAlarmConfAbrev OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Abbreviated alarm name for making smaller labels."
    ::= { mnPrAlarmConfEntry 4 }

mnPrAlarmConfMap OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This bit-maps the alarm to certain relays / actions.
              For example:
                Bit 0:  near-end Relay 1
                Bit 1:  near-end Relay 2
                Bit 2:  near-end Relay 3
                Bit 3:  near-end Relay 4
                Bit 4:  reserved
                Bit 5:  far-end Relay 1
                Bit 6:  far-end Relay 2
                Bit 7:  far-end Relay 3
                Bit 8:  far-end Relay 4
                Bit 9:  reserved
                Bit 10: major alarm
                Bit 11: minor alarm
                Bit 12: high priority alarm
                Bit 13: low priority alarm
                Bit 14 - 31: reserved"
    ::= { mnPrAlarmConfEntry 5 }

mnPrAlarmConfCircuitType OBJECT-TYPE
    SYNTAX  INTEGER {
                 circuitOpen(1),
                 circuitClosed(2),
                 circuitNone(99)
              }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This specifies if associated external input or relay is
              normally open or normally closed in alarm condition.
              99 - Not Applicable
              1 - Normally Open (active high)
              2 - Normally Closed (active low)"
    ::= { mnPrAlarmConfEntry 6 }

mnPrAlarmConfThreshold OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "For alarms that allow settable thresholds, this defines the
              threshold.  For integer values (e.g. Temperature), the value
              is the threshold.  For scientific values (e.g. BER levels),
              the value is the negative exponent.  For example, to set
              a BER threshold of 10^-3, the value set here should be +3."
    ::= { mnPrAlarmConfEntry 7 }

mnPrAlarmConfSet OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "True if the alarm is currently active, false otherwise."
    ::= { mnPrAlarmConfEntry 8 }

-------------------------------------------------------------------------------
-- Network Management Configuration Table **
-------------------------------------------------------------------------------

mnPrNMConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrNMConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing network management
             configuration information for each radio within
             the link."
    ::= { mnPrConfigurationObjects  9 }

mnPrNMConfEntry OBJECT-TYPE
    SYNTAX  MnPrNMConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of network management configuration information
             for a single radio within the link. "
    INDEX   { mnRadioIndex }
    ::= { mnPrNMConfTable  1 }

MnPrNMConfEntry ::=
    SEQUENCE {

        mnPrNMConfDefGateway
            IpAddress,

        mnPrNMConfTrapMode
            INTEGER,

        mnPrNMConfTFTPAddr
            IpAddress,

        mnPrNMConfTFTPFile
            DisplayString,

        mnPrNMConfSNTPAddr
            IpAddress,

        mnPrNMConfSNTPInterval
            INTEGER,

        mnPrNMConfSNTPTimeout
            INTEGER,

        mnPrNMConfAuthMode
            INTEGER,

        mnPrNMConfRADTimeout
            INTEGER,

        mnPrNMConfRADRetries
            INTEGER,

        mnPrNMConfRADDeadtime
            INTEGER,

        mnPrNMConfRADMinPwdLen
            INTEGER

    }

mnPrNMConfDefGateway OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object configures the IPv4 address of the
            default gateway available via the ethernet
            interface for this radio."
    ::= { mnPrNMConfEntry  1 }

mnPrNMConfTrapMode OBJECT-TYPE
    SYNTAX  INTEGER {
                 silent(1),
                 terse(2),
                 verbose(3)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Controls what traps are sent:
              silent: No traps sent
              terse:  Only the Major and Minor summary traps are sent
              verbose: All traps are sent"
    ::= { mnPrNMConfEntry  2 }

mnPrNMConfTFTPAddr OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object configures the IPv4 address of the
            TFTP server."
    ::= { mnPrNMConfEntry  3 }

mnPrNMConfTFTPFile OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object configures the default filename to use for
            TFTP transfers."
    ::= { mnPrNMConfEntry  4 }

mnPrNMConfSNTPAddr OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object configures the IPv4 address of the
            SNTP server."
    ::= { mnPrNMConfEntry  5 }

mnPrNMConfSNTPInterval OBJECT-TYPE
    SYNTAX  INTEGER (0..999)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "The interval in minutes between sucessive scheduled polls of  
             the SNTP server."
    ::= { mnPrNMConfEntry  6 }

mnPrNMConfSNTPTimeout OBJECT-TYPE
    SYNTAX  INTEGER (2..15)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "The number of seconds to wait before declaring that an SNTP
             request has timed out. "
    ::= { mnPrNMConfEntry  7 }
        
mnPrNMConfAuthMode OBJECT-TYPE
    SYNTAX  INTEGER {
                 local(2),
                 localradius(3)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Authentication mode: what method(s) to use to attempt to 
             authenticate users, and in what order to attempt those methods"
    ::= { mnPrNMConfEntry  8 }

mnPrNMConfRADTimeout OBJECT-TYPE
    SYNTAX  INTEGER (1..15)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "RADIUS Timeout in seconds."
    ::= { mnPrNMConfEntry  9 }

mnPrNMConfRADRetries OBJECT-TYPE
    SYNTAX  INTEGER (0..15)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Maximum number of times to retry RADIUS requests."
    ::= { mnPrNMConfEntry  10 }

mnPrNMConfRADDeadtime OBJECT-TYPE
    SYNTAX  INTEGER (0..86400)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Time in seconds to avoid using a RADIUS server after it has 
             failed (if there is an alternative)."
    ::= { mnPrNMConfEntry  11 }

mnPrNMConfRADMinPwdLen OBJECT-TYPE
    SYNTAX  INTEGER (0..86400)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Require minimum of 8 bytes in the RADIUS password."
    ::= { mnPrNMConfEntry  12 }

-------------------------------------------------------------------------------
-- IP Interface Configuration Table **
-------------------------------------------------------------------------------

mnPrIPIfConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrIPIfConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "A table that contains configuration information about each of the radio's
             IP interfaces."
    ::= { mnPrConfigurationObjects 10 }

mnPrIPIfConfEntry OBJECT-TYPE
    SYNTAX  MnPrIPIfConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "Configuration information about one of the radio's IP interfaces."
    INDEX   { mnRadioIndex, mnIPIfIndex }
    ::= { mnPrIPIfConfTable 1 }

MnPrIPIfConfEntry ::=
    SEQUENCE {
        mnIPIfIndex
            INTEGER,

        mnPrIPIfConfIPAddr
            IpAddress,

        mnPrIPIfConfSubnetMask
            IpAddress,

        mnPrIPIfConfRouting
            INTEGER,

        mnPrIPIfConfRoutingBit
            INTEGER,

        mnPrIPIfConfCustomAddress
            IpAddress,

        mnPrIPIfConfCustomSubnet
            IpAddress

    }

mnIPIfIndex OBJECT-TYPE
    SYNTAX  INTEGER {
                 ethernet(2),
                 ipoair(3),
                 ppp(4)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
            "The index for the IP Interfaces Table (these match the numbering
             used for these same interfaces in the MIB-II IfTable.)"
    ::= { mnPrIPIfConfEntry 1 }

mnPrIPIfConfIPAddr OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The IP address for this interface."
    ::= { mnPrIPIfConfEntry 2 }

mnPrIPIfConfSubnetMask OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The subnet mask for this interface."
    ::= { mnPrIPIfConfEntry 3 }

mnPrIPIfConfRouting OBJECT-TYPE
    SYNTAX  INTEGER {
                 none(1),
                 rip(2)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The routing protocol used on this interface."
    ::= { mnPrIPIfConfEntry 4 }

mnPrIPIfConfRoutingBit OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "A bitmap providing more information for the selected routing type.
               For RIP, the LSB is set if a custom advisement is to be used."
    ::= { mnPrIPIfConfEntry 5 }

mnPrIPIfConfCustomAddress OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "If custom advisement is enabled for RIP, this is the address that
             is sent out on RIP packets for this port."
    ::= { mnPrIPIfConfEntry 6 }

mnPrIPIfConfCustomSubnet OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "If custom advisement is enabled for RIP, this is the subnet that
            is sent out on RIP packets for this port."
    ::= { mnPrIPIfConfEntry 7 }

-------------------------------------------------------------------------------
-- Static Route Configuration Table
-------------------------------------------------------------------------------

mnPrRouteConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrRouteConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "Static routing configuration for this radio."
    ::= { mnPrConfigurationObjects 11 }

mnPrRouteConfEntry OBJECT-TYPE
    SYNTAX  MnPrRouteConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "Configuration information for use in creating and maintaining static routes."
    INDEX   { mnRadioIndex, mnPrRouteConfIndex }
    ::= { mnPrRouteConfTable 1 }

MnPrRouteConfEntry ::=
    SEQUENCE {
        mnPrRouteConfIndex
            INTEGER,

        mnPrRouteConfDest
            IpAddress,

        mnPrRouteConfMask
            IpAddress,

        mnPrRouteConfNextHop
            IpAddress,

        mnPrRouteConfMetric
            INTEGER,

        mnPrRouteConfRowStatus
            RowStatus
    }

mnPrRouteConfIndex OBJECT-TYPE
    SYNTAX  INTEGER (0..50)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
            "The index of the static routing database that contains
             this row"
    ::= { mnPrRouteConfEntry 1 }

mnPrRouteConfDest OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The destination IP address of this route."
    ::= { mnPrRouteConfEntry 2 }

mnPrRouteConfMask OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "Indicate the mask to be logical-ANDed with the
            destination address before being compared to the
            value in the mnPrRouteConfDest field.
            For those systems that do not support arbitrary
            subnet masks, an agent constructs the value of the
            mnPrRouteConfMask by determining whether
            the value of the correspondent
            mnPrRouteConfDest field belong to a
            class-A, B, or C network, and then using one of:

                 mask           network
                 255.0.0.0      class-A
                 255.255.0.0    class-B
                 255.255.255.0  class-C"

    ::= { mnPrRouteConfEntry 3 }

mnPrRouteConfNextHop OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The IP address of the next hop of this route.
            (In the case of a route bound to an interface
            which is realized via a broadcast media, the value
            of this field is the agent's IP address on that
            interface.)"
    ::= { mnPrRouteConfEntry 4 }

mnPrRouteConfMetric OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The routing metric for this route."
    ::= { mnPrRouteConfEntry 5 }

mnPrRouteConfRowStatus OBJECT-TYPE
    SYNTAX  RowStatus
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The status of this conceptual row in the
             mnPrRouteConfTable:
                      active (1)
                      notInService (2)
                      notReady (3)      (not setable)
                      createAndGo (4)   (can be set, but not supported by this table)
                      createAndWait(5)
                      destroy (6)
             A static route is not qualified for activation until
             instances of all columns of the current row
             have an appropriate value."
    ::= { mnPrRouteConfEntry 6 }


-------------------------------------------------------------------------------
-- Trap Destination Configuration Table **
-------------------------------------------------------------------------------

mnPrTrapConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrTrapConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "Trap Destinations for this radio."
    ::= { mnPrConfigurationObjects 12 }

mnPrTrapConfEntry OBJECT-TYPE
    SYNTAX  MnPrTrapConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "One trap destination entry."
    INDEX   { mnRadioIndex, mnTrapIndex }
    ::= { mnPrTrapConfTable 1 }

MnPrTrapConfEntry ::=
    SEQUENCE {
        mnTrapIndex
            INTEGER,

        mnPrTrapConfTrapAddr
            IpAddress,

        mnPrTrapConfTrapComm
            DisplayString,

        mnPrTrapConfRowStatus
            RowStatus
    }

mnTrapIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..5)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
            "The index of the trap destination configuration entry."
    ::= { mnPrTrapConfEntry 1 }

mnPrTrapConfTrapAddr OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The IP address of the trap destination."
    ::= { mnPrTrapConfEntry 2 }

mnPrTrapConfTrapComm OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The trap community string to use when sending to the
             associated trap trap destination."
    ::= { mnPrTrapConfEntry 3 }

mnPrTrapConfRowStatus OBJECT-TYPE
    SYNTAX  RowStatus
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The status of this conceptual row in the mnPrTrapConfTable:
                      active (1)
                      notInService (2)
                      notReady (3)      (not setable)
                      createAndGo (4)   (can be set, but not supported by this table)
                      createAndWait(5)
                      destroy (6)
             A row is not qualified for activation until
             instances of all columns of the row
             have an appropriate value."
    ::= { mnPrTrapConfEntry 4 }


-------------------------------------------------------------------------------
-- PPP Configuration Table
-------------------------------------------------------------------------------
mnPrPPPConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrPPPConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "PPP Configuration Parameters for this radio."
    ::= { mnPrConfigurationObjects 13 }

mnPrPPPConfEntry OBJECT-TYPE
    SYNTAX  MnPrPPPConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "One PPP Configuration entry."
    INDEX   { mnRadioIndex  }
    ::= { mnPrPPPConfTable 1 }

MnPrPPPConfEntry ::=
    SEQUENCE {
        mnPrPPPConfBaudRate
            INTEGER,

        mnPrPPPConfInitString
            DisplayString,

        mnPrPPPConfChapUser
            DisplayString,

        mnPrPPPConfChapSecret
            DisplayString
    }

mnPrPPPConfBaudRate OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The baud rate for the external modem port."
    ::= { mnPrPPPConfEntry 1 }

mnPrPPPConfInitString OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The initialization string for the external modem."
    ::= { mnPrPPPConfEntry 2 }

mnPrPPPConfChapUser OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The initialization string for the external modem."
    ::= { mnPrPPPConfEntry 3 }

mnPrPPPConfChapSecret OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The CHAP secret needed to access the external modem port."
    ::= { mnPrPPPConfEntry 4 }

-------------------------------------------------------------------------------
-- Performance History Configuration Table
-------------------------------------------------------------------------------
mnPrPerfHistConfigObjects OBJECT IDENTIFIER ::= { mnPrConfigurationObjects 14 }

mnPrPerfHistConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrPerfHistConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "Performance History Configuration Parameters for each radio."
    ::= { mnPrPerfHistConfigObjects 1 }

mnPrPerfHistConfEntry OBJECT-TYPE
    SYNTAX  MnPrPerfHistConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "One Performance History Configuration entry."
    INDEX   { mnRadioIndex  }
    ::= { mnPrPerfHistConfTable 1 }

MnPrPerfHistConfEntry ::=
    SEQUENCE {
        mnPrPerfHistConfEnable
            TruthValue,

        mnPrPerfHistConfInterval
            INTEGER,

        mnPrPerfHistConfFilename
            DisplayString,

        mnPrPerfHistConfUploadInterval
            INTEGER
    }

mnPrPerfHistConfEnable OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to administratively
             enable or disable the collection of Performance History data."
    ::= { mnPrPerfHistConfEntry  1 }

mnPrPerfHistConfInterval OBJECT-TYPE
    SYNTAX  INTEGER     -- UNITS seconds
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "The number of seconds between each Performance History sample."
    ::= { mnPrPerfHistConfEntry  2 }

mnPrPerfHistConfFilename OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object configures the filename to be used for manual uploads
            of Performance History in CSV format. It also serves as the
            basename for automatic scheduled uploads which will append the
            date and time to this filename just in front of the filetype
            extension if any."
    ::= { mnPrPerfHistConfEntry  3 }

mnPrPerfHistConfUploadInterval OBJECT-TYPE
    SYNTAX  INTEGER     -- UNITS seconds
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "The number of seconds to collect Performance History data before
           automatically uploading it in CSV format to the TFTP server.
           A value of 0 disables automatic uploads."
    ::= { mnPrPerfHistConfEntry  4 }

mnPrPerfHistConfVarTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrPerfHistConfVarEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "Performance History Variable Configuration Parameters for each
            radio."
    ::= { mnPrPerfHistConfigObjects 2 }

mnPrPerfHistConfVarEntry OBJECT-TYPE
    SYNTAX  MnPrPerfHistConfVarEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "One Performance History Variable Configuration entry."
    INDEX   { mnRadioIndex, mnPrPerfHistConfVarIndex  }
    ::= { mnPrPerfHistConfVarTable 1 }

MnPrPerfHistConfVarEntry ::=
    SEQUENCE {
        mnPrPerfHistConfVarIndex
            INTEGER,

        mnPrPerfHistConfVarName
            DisplayString,

        mnPrPerfHistConfVarEnable
            TruthValue
    }

mnPrPerfHistConfVarIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..32)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Performance History Variable Index."
    ::= { mnPrPerfHistConfVarEntry  1 }

mnPrPerfHistConfVarName OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "This object displays the Performance History variable name for
           this record."
    ::= { mnPrPerfHistConfVarEntry  2 }

mnPrPerfHistConfVarEnable OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to administratively
             enable or disable the collection of Performance History data
             for the selected performance variable."
    ::= { mnPrPerfHistConfVarEntry  3 }


-------------------------------------------------------------------------------
-- E1/DS1 Tributary Configuration Table
-------------------------------------------------------------------------------

mnPrTribE1ConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrTribE1ConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing configuration information
             about each E1/DS1 tributary within this link."
    ::= { mnPrConfigurationObjects  15 }

mnPrTribE1ConfEntry OBJECT-TYPE
    SYNTAX  MnPrTribE1ConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of configuration information about a
             single E1/DS1 tributary within this link. "
    INDEX   { mnTribIndex }
    ::= { mnPrTribE1ConfTable  1 }

MnPrTribE1ConfEntry ::=
    SEQUENCE {

        mnPrTribE1ConfLineType
            INTEGER

    }

mnPrTribE1ConfLineType OBJECT-TYPE
    SYNTAX  INTEGER {
                encodeHdb3B8zs(1),
                encodeAmi(2)
            }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to administratively
           configure the E1/DS1 line encoding state of this
           tributary.
               encodeHdb3B8zs(1) - Use HDB3 (E1) or B8ZS (DS1) line
                   encoding for the specified tributary.
               encodeAmi(2) - Use AMI (E1 or DS1) line encoding for
                   the specified tributary.
           Currently, all tributaries on a LIM are encoded as
           specified for the first tributary on that LIM (trib 1 for
           LIM A, trib 17 for LIM B). This will change in the future
           when the hardware is capable of per tributary encoding."
    ::= { mnPrTribE1ConfEntry  1 }

-------------------------------------------------------------------------------
-- Auxiliary Channel Configuration Table
-------------------------------------------------------------------------------

mnPrAuxConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrAuxConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing configuration parameters for
             the Auxiliary channels in the link"
    ::= { mnPrConfigurationObjects  16 }

mnPrAuxConfEntry OBJECT-TYPE
    SYNTAX  MnPrAuxConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of configuration parameters for a single
             Auxiliary channel within the link.  Can be used
             to configure other similar ports in the Link,
             like the OW port in data mode."
    INDEX   { mnRadioIndex, mnPrAuxIndex }
    ::= { mnPrAuxConfTable  1 }

MnPrAuxConfEntry ::=
    SEQUENCE {
        mnPrAuxIndex
            INTEGER,

        mnPrAuxConfBaudRate
            INTEGER,

        mnPrAuxConfParity
            INTEGER,

        mnPrAuxConfInversion
            INTEGER,

        mnPrAuxConfStopBits
            INTEGER

    }

mnPrAuxIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..10)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Auxiliary Channel Index.  AUX1 = 1, AUX2 = 2, OW(data) = 3"
    ::= { mnPrAuxConfEntry  1 }

mnPrAuxConfBaudRate OBJECT-TYPE
    SYNTAX  INTEGER {
                 baud9600(9600),
                 baud14400(14400),
                 baud19200(19200),
                 baud28800(28800),
                 baud38400(38400),
                 baud48000(48000),
                 baud56000(56000),
                 baud57600(57600),
                 baud64000(64000)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the
           baud rate used for this auxiliary channel.  AUX1/AUX2 
           support only baud9600 and baud19200."
    ::= { mnPrAuxConfEntry  2 }

mnPrAuxConfParity OBJECT-TYPE
    SYNTAX  INTEGER {
                 noParity(1),
                 evenParity(2),
                 oddParity(3)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the
           parity checking for this auxiliary channel."
    ::= { mnPrAuxConfEntry  3 }

mnPrAuxConfInversion OBJECT-TYPE
    SYNTAX  INTEGER {
                 noInversion(1),
                 invertInput(2),
                 invertOutput(3),
                 invertBoth(4)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the
           signal inversion for this auxiliary channel."
    ::= { mnPrAuxConfEntry  4 }

mnPrAuxConfStopBits OBJECT-TYPE
    SYNTAX  INTEGER {
                 oneStopBit(1),
                 twoStopBits(2)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the
           number of stop bits used for this auxiliary channel."
    ::= { mnPrAuxConfEntry  5 }


-------------------------------------------------------------------------------
-- Ethernet Port Configuration Table
-------------------------------------------------------------------------------

mnPrEthPortConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrEthPortConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing configuration parameters for Ethernet
              ports in the link, particularly the auxilliary non-LIM ports."
    ::= { mnPrConfigurationObjects  17 }

mnPrEthPortConfEntry OBJECT-TYPE
    SYNTAX  MnPrEthPortConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of configuration parameters for a single Ethernet
              port within the link."
    INDEX   { mnRadioIndex, mnPrEthPortIndex }
    ::= { mnPrEthPortConfTable  1 }

MnPrEthPortConfEntry ::=
    SEQUENCE {
        mnPrEthPortIndex
            INTEGER,

        mnPrEthPortConfSpeed
            LanSpeed
    }

mnPrEthPortIndex OBJECT-TYPE
    SYNTAX  INTEGER (0..9999)         
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "NMS Port Configuration Index:
             1 = NMS 1
             2 = NMS 2
             3 = Integral Ethernet 1
             4 = Integral Ethernet 2
             Range potentially allows tributaries to be indexed."
    ::= { mnPrEthPortConfEntry  1 }

mnPrEthPortConfSpeed OBJECT-TYPE
    SYNTAX  LanSpeed
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the LAN speed 
             settings for the Ethernet ports. It allows the user to enable
             auto-negotiation or set the speed and duplex settings to 
             a fixed value."
    ::= { mnPrEthPortConfEntry  2 }


-------------------------------------------------------------------------------
-- Switching Plane Configuration Table
-------------------------------------------------------------------------------

mnPrSwitchPlaneConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrSwitchPlaneConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing configuration parameters (and 
             control and status variables) for the switching
             planes in the link.  
             A protected link contains pairs of redundant components
             (generally in a primary and associated secondary SPU).
             The pair defines a switching plane.
             This table has a row for every redundant component in the 
             link."
    ::= { mnPrConfigurationObjects  18 }

mnPrSwitchPlaneConfEntry OBJECT-TYPE
    SYNTAX  MnPrSwitchPlaneConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of configuration parameters for a single
             redundant component within the link."
    INDEX   { mnRadioIndex, mnPrSwitchPlaneIndex }
    ::= { mnPrSwitchPlaneConfTable  1 }

MnPrSwitchPlaneConfEntry ::=
    SEQUENCE {
        mnPrSwitchPlaneIndex
            INTEGER,

        mnPrSwitchPlaneConfStatus
            INTEGER,
            
        mnPrSwitchPlaneConfOnlineReq
            TruthValue
    }

mnPrSwitchPlaneIndex OBJECT-TYPE
    SYNTAX  INTEGER (0..9999)         
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Switch Configuration Index.
             1 = TxMux
             2 = TxMod
             3 = RxDMux
             4 = RxDMod
             etc. Range sized to allow tributaries to be indexed."
    ::= { mnPrSwitchPlaneConfEntry  1 }

mnPrSwitchPlaneConfStatus OBJECT-TYPE
    SYNTAX  INTEGER{
                 isTrue(1),     -- Temporary, for backwards compatibility
                 isFalse(2),    -- Temporary, for backwards compatibility
                 oos(3),        -- oos
                 is(7),         -- is
                 oosAlm(11),    -- oos  Alm
                 isAlm(15),     -- is   Alm
                 oosOlr(19),    -- oos       Olr
                 isOlr(23),     -- is        Olr
                 oosAlmOlr(27), -- oos  Alm  Olr
                 isAlmOlr(31)   -- is   Alm  Olr
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ".....
           Bit 2 (00100):       1=IS  (0=OOS)
           Bit 3 (01000):       1=ALM
           Bit 4 (10000):       1=OLR
           
           "
    ::= { mnPrSwitchPlaneConfEntry  2 }

mnPrSwitchPlaneConfOnlineReq OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "....."
    ::= { mnPrSwitchPlaneConfEntry  3 }



-------------------------------------------------------------------------------
-- DPM Channel Interface Configuration Table
-------------------------------------------------------------------------------

mnPrDpmCiConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrDpmCiConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing configuration parameters (and 
             status variables) for DPM Channel Interfaces.
             "
    ::= { mnPrConfigurationObjects  19 }

mnPrDpmCiConfEntry OBJECT-TYPE
    SYNTAX  MnPrDpmCiConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of configuration parameters for a single
             DPM Channel Interface within the link."
    INDEX   { mnPrDpmCiIndex }
    ::= { mnPrDpmCiConfTable  1 }

MnPrDpmCiConfEntry ::=
    SEQUENCE {
        mnPrDpmCiIndex               
            INTEGER,

        mnPrDpmCiConfType            
            INTEGER,

        mnPrDpmCiConfFullName        
            DisplayString,        

        mnPrDpmCiConfSharpCapable 
            TruthValue,
               
        mnPrDpmCiConfActCgName       
            DisplayString,        
        
        mnPrDpmCiConfActSharpEnabled 
            TruthValue,
        
        mnPrDpmCiConfActOtherIntf    
            DisplayString,        
        
        mnPrDpmCiConfPropAvailable   
            TruthValue,
        
        mnPrDpmCiConfPropCgName      
            DisplayString,        
        
        mnPrDpmCiConfPropSharpEnabled
            TruthValue,
        
        mnPrDpmCiConfPropOtherIntf   
            DisplayString        
    }

mnPrDpmCiIndex OBJECT-TYPE
    SYNTAX  INTEGER (10001..42999)         
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCiConfEntry  1 }

mnPrDpmCiConfType OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCiConfEntry  2 }

mnPrDpmCiConfFullName OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCiConfEntry  3 }

mnPrDpmCiConfSharpCapable OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCiConfEntry  4 }

mnPrDpmCiConfActCgName OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCiConfEntry  5 }

mnPrDpmCiConfActSharpEnabled OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCiConfEntry  6 }

mnPrDpmCiConfActOtherIntf OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCiConfEntry  7 }

mnPrDpmCiConfPropAvailable OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCiConfEntry  8 }

mnPrDpmCiConfPropCgName OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCiConfEntry  9 }

mnPrDpmCiConfPropSharpEnabled OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCiConfEntry  10 }

mnPrDpmCiConfPropOtherIntf OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCiConfEntry  11 }



-------------------------------------------------------------------------------
-- DPM Channel Group Configuration Table
-------------------------------------------------------------------------------

mnPrDpmCgConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrDpmCgConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing configuration parameters (and 
             status variables) for DPM Channel Groups.
             "
    ::= { mnPrConfigurationObjects  20 }

mnPrDpmCgConfEntry OBJECT-TYPE
    SYNTAX  MnPrDpmCgConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of configuration parameters for a single
             DPM Channel Group within the link."
    INDEX   { mnRadioIndex, mnPrDpmCgIndex }
    ::= { mnPrDpmCgConfTable  1 }

MnPrDpmCgConfEntry ::=
    SEQUENCE {
        mnPrDpmCgIndex            
            INTEGER,

        mnPrDpmCgConfName         
            DisplayString,

        mnPrDpmCgConfType         
            INTEGER,

        mnPrDpmCgConfCount        
            INTEGER,

        mnPrDpmCgConfChMinRate    
            INTEGER,

        mnPrDpmCgConfChMaxRate    
            INTEGER,

        mnPrDpmCgConfChAllocRate  
            INTEGER,

        mnPrDpmCgConfIntf1        
            DisplayString,

        mnPrDpmCgConfSharpEnabled1
            TruthValue,
            
        mnPrDpmCgConfIntf2        
            DisplayString,

        mnPrDpmCgConfSharpEnabled2
            TruthValue,
        
        mnPrDpmCgConfRowStatus
            RowStatus    
                    
    }

mnPrDpmCgIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..1999)        
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCgConfEntry  1 }

mnPrDpmCgConfName OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCgConfEntry  2 }

mnPrDpmCgConfType OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCgConfEntry  3 }

mnPrDpmCgConfCount OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCgConfEntry  4 }

mnPrDpmCgConfChMinRate OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCgConfEntry  6 }

mnPrDpmCgConfChMaxRate OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCgConfEntry  7 }

mnPrDpmCgConfChAllocRate OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Capacity of the channels in this channel group (bits/sec)"
    ::= { mnPrDpmCgConfEntry  8 }

mnPrDpmCgConfIntf1 OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCgConfEntry  9 }

mnPrDpmCgConfSharpEnabled1 OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCgConfEntry  10 }


mnPrDpmCgConfIntf2 OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCgConfEntry  11 }

mnPrDpmCgConfSharpEnabled2 OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCgConfEntry  12 }

mnPrDpmCgConfRowStatus OBJECT-TYPE
    SYNTAX  RowStatus
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrDpmCgConfEntry  13 }


-------------------------------------------------------------------------------
-- SHARP Channel Table
-------------------------------------------------------------------------------

mnPrSHARPChanTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrSHARPChanEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing configuration parameters (and 
             status variables) for SHARP Channels.
             "
    ::= { mnPrConfigurationObjects  21 }

mnPrSHARPChanEntry OBJECT-TYPE
    SYNTAX  MnPrSHARPChanEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of configuration parameters for a single
             SHARP Channel within the link."
    INDEX   { mnPrDpmCiIndex }
    ::= { mnPrSHARPChanTable  1 }

MnPrSHARPChanEntry ::=
    SEQUENCE {
        mnPrSHARPChanStatus            
            INTEGER,

        mnPrSHARPChanActiveChan         
            INTEGER,

        mnPrSHARPChanMasterBER         
            INTEGER,

        mnPrSHARPChanSlaveBER         
            INTEGER,

        mnPrSHARPChanEnable         
            INTEGER,

        mnPrSHARPChanSwitchMode         
            INTEGER,

        mnPrSHARPChanMasterThresh         
            INTEGER,

        mnPrSHARPChanSlaveThresh         
            INTEGER,

        mnPrSHARPChanManualForce         
            INTEGER,

        mnPrSHARPChanSwitchPref         
            INTEGER

    }

mnPrSHARPChanStatus OBJECT-TYPE
    SYNTAX  INTEGER {
                 disabled(1),
                 normal(2),
                 notProtected(3),
                 channelFail(4),
                 limFail(5),
                 unknown(6)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrSHARPChanEntry  1 }

mnPrSHARPChanActiveChan OBJECT-TYPE
    SYNTAX  INTEGER {
                 master(1),
                 slave(2),
                 unknown(3)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrSHARPChanEntry  2 }

mnPrSHARPChanMasterBER OBJECT-TYPE
    SYNTAX  SHARPBERStatus
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrSHARPChanEntry  3 }

mnPrSHARPChanSlaveBER OBJECT-TYPE
    SYNTAX  SHARPBERStatus
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrSHARPChanEntry  4 }

mnPrSHARPChanEnable OBJECT-TYPE
    SYNTAX  INTEGER {
                 disable(1),
                 enable(2)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrSHARPChanEntry  6 }
                                                            
mnPrSHARPChanSwitchMode OBJECT-TYPE
    SYNTAX  INTEGER {
                 hard(1),
                 soft(2)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrSHARPChanEntry  7 }
                                                            
mnPrSHARPChanMasterThresh OBJECT-TYPE
    SYNTAX  SHARPBERThresh
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrSHARPChanEntry  8 }
                                                            
mnPrSHARPChanSlaveThresh OBJECT-TYPE
    SYNTAX  SHARPBERThresh
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrSHARPChanEntry  9 }
                                                            
mnPrSHARPChanManualForce OBJECT-TYPE
    SYNTAX  INTEGER {
                 noForce(1),
                 forceMaster(2),
                 forceSlave(3),
                 forceMasterOperNA(4),
                 forceSlaveOperNA(5)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "(The 'OperNA' values don't generate alarms.  For cases when a channel
            needs to be forced long-term, for operational (not diagnostic) reasons.)"
    ::= { mnPrSHARPChanEntry  10 }
                                                            
mnPrSHARPChanSwitchPref OBJECT-TYPE
    SYNTAX  INTEGER {
                 noPreference(1),
                 masterNonRevert(2),
                 masterRevert(3),
                 slaveNonRevert(4),
                 slaveRevert(5)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrSHARPChanEntry  11 }

-------------------------------------------------------------------------------
-- Tributary Extended Configuration Table
-------------------------------------------------------------------------------

mnPrTribXConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrTribXConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing configuration and other
             information about each tributary within this link.
             This table uses DPM CI (RLTTT) indexing, to allow
             access to more than 99 tributaries.  Some of the
             objects in this table are expanded versions of other
             tributary-related objects in the MIB, inserted here
             to allow access to tributaries beyond #99. "
    ::= { mnPrConfigurationObjects  22 }

mnPrTribXConfEntry OBJECT-TYPE
    SYNTAX  MnPrTribXConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of configuration information about a
             single tributary within this link. "
    INDEX   { mnPrDpmCiIndex }
    ::= { mnPrTribXConfTable  1 }

MnPrTribXConfEntry ::=
    SEQUENCE {

        mnPrTribXConfAdminEquipped
            TruthValue,
            
        mnPrTribXConfLineType
            INTEGER,
            
        mnPrTribXConfLocalLoopback
            TruthValue,
            
        mnPrTribXConfRemoteLoopback
            TruthValue,
            
        mnPrTribXConfTribStatus
            INTEGER

    }

mnPrTribXConfAdminEquipped OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to administratively
             configure the provisioned equipment state of this
             tributary.  If the tributary is not equipped, it
             will generate no alarms."
    ::= { mnPrTribXConfEntry  1 }

mnPrTribXConfLineType OBJECT-TYPE
    SYNTAX  INTEGER {
                encodeHdb3B8zs(1),
                encodeAmi(2)
            }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to administratively
           configure the E1/DS1 line encoding state of this
           tributary.
               encodeHdb3B8zs(1) - Use HDB3 (E1) or B8ZS (DS1) line
                   encoding for the specified tributary.
               encodeAmi(2) - Use AMI (E1 or DS1) line encoding for
                   the specified tributary."
    ::= { mnPrTribXConfEntry  2 }

mnPrTribXConfLocalLoopback OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "If set to 'True', enables tributary local loopback (loops
            incoming tributary signal back out to customer equipment.)"
    ::= { mnPrTribXConfEntry  3 }

mnPrTribXConfRemoteLoopback OBJECT-TYPE
    SYNTAX  TruthValue
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "If set to 'True', enables tributary remote loopback (loops
            outgoing tributary signal back into tributary.)"
    ::= { mnPrTribXConfEntry  4 }


mnPrTribXConfTribStatus OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Tributary Status bits.
                Bit 0:
                ...  
                Bit 14 - 31: reserved"
    ::= { mnPrTribXConfEntry  5 }
                                                                

-------------------------------------------------------------------------------
-- Ethernet Switch Table
-------------------------------------------------------------------------------

mnPrEthSwTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrEthSwEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing information about 
             each Ethernet switch within the link."
    ::= { mnPrConfigurationObjects  23 }

mnPrEthSwEntry OBJECT-TYPE
    SYNTAX  MnPrEthSwEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "The information for a single
             Ethernet switch within the link."
    INDEX   { mnRadioIndex, mnPrEthSwIndex }
    ::= { mnPrEthSwTable  1 }

MnPrEthSwEntry ::=
    SEQUENCE {

        mnPrEthSwIndex
            INTEGER,

        mnPrEthSwStatRRPStatus
            INTEGER,

        mnPrEthSwConfRRPMode
            INTEGER,

        mnPrEthSwConfRRPPollInterval
            INTEGER,

        mnPrEthSwConfRRPThreshold
            INTEGER,

        mnPrEthSwConfRRPFwdDelay
            INTEGER,

        mnPrEthSwConfRRPRingID
            DisplayString

    }

mnPrEthSwIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..9)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrEthSwEntry  1 }

mnPrEthSwStatRRPStatus OBJECT-TYPE
    SYNTAX  INTEGER {
                 ringok(1),
                 ringbroken(2),
                 offline(3),
                 notapplicable(4),
                 notsupported(5)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrEthSwEntry  2 }

mnPrEthSwConfRRPMode OBJECT-TYPE
    SYNTAX  INTEGER {
                 disabled(1),
                 passthrough(2),
                 switch(3)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrEthSwEntry  3 }

mnPrEthSwConfRRPPollInterval OBJECT-TYPE
    SYNTAX  INTEGER (10..10000)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrEthSwEntry  4 }

mnPrEthSwConfRRPThreshold OBJECT-TYPE
    SYNTAX  INTEGER (50..50000)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrEthSwEntry  5 }

mnPrEthSwConfRRPFwdDelay OBJECT-TYPE
    SYNTAX  INTEGER (10..10000)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrEthSwEntry  6 }

mnPrEthSwConfRRPRingID OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrEthSwEntry  7 }
    


-------------------------------------------------------------------------------
-- ACM Table
-------------------------------------------------------------------------------

mnPrAcmTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrAcmEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing configuration parameters and other information  
             related to the ACM facility on each radio."
    ::= { mnPrConfigurationObjects  24 }

mnPrAcmEntry OBJECT-TYPE
    SYNTAX  MnPrAcmEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "The ACM paramters/information for a single radio within the link."
    INDEX   { mnRadioIndex }
    ::= { mnPrAcmTable  1 }

MnPrAcmEntry ::=
    SEQUENCE {
        mnPrAcmModeProp
            INTEGER,

        mnPrAcmModeConf
            INTEGER,

        mnPrAcmMaxCapProp
            INTEGER,

        mnPrAcmMaxCapConf
            INTEGER,

        mnPrAcmMinEthThreshProp
            INTEGER,

        mnPrAcmMinEthThreshConf
            INTEGER,

        mnPrAcmTxPower
            INTEGER,

        mnPrAcmMaxTxPower
            INTEGER, 
            
        mnPrAcmProfileHeader 
            DisplayString
    }

mnPrAcmModeProp OBJECT-TYPE
    SYNTAX  INTEGER {
                 acmdisabled(1),
                 acmrxtx(2)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Proposed ACM Mode"
    ::= { mnPrAcmEntry  1 }

mnPrAcmModeConf OBJECT-TYPE
    SYNTAX  INTEGER {
                 acmdisabled(1),
                 acmrxtx(2)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Current ACM Mode"
    ::= { mnPrAcmEntry  2 }

mnPrAcmMaxCapProp OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Proposed Maximum ACM Capacity (in kbps).  After a sucessful
             evaluation, a subsequent activation sets mnPrAcmMaxCapConf
             to the value of mnPrAcmMaxCapProp."
    ::= { mnPrAcmEntry  3 }

mnPrAcmMaxCapConf OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Current Maximum ACM Capacity (in kbps).  Ignored if ACM is off.
             If ACM is on, this value, if greater than Station License
             Capacity, takes precedence over Station License Capacity and
             can result in a total capacity that is GREATER than SL Capacity." 
    ::= { mnPrAcmEntry  4 }

mnPrAcmMinEthThreshProp OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Proposed ACM Minimum Ethernet Threshold (in kbps): PDH traffic is 
             dropped if necessary to keep Ethernet capacity at this level."
    ::= { mnPrAcmEntry  5 }

mnPrAcmMinEthThreshConf OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
            "Current ACM Minimum Ethernet Threshold (in kbps): PDH traffic is 
             dropped if necessary to keep Ethernet capacity at this level."
    ::= { mnPrAcmEntry  6 }

mnPrAcmTxPower OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "ACM Tx Power"
    ::= { mnPrAcmEntry  7 }

mnPrAcmMaxTxPower OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "ACM Maximum Tx Power"
    ::= { mnPrAcmEntry  8 }

mnPrAcmProfileHeader OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The column headers that line up with the textual columns embedded in 
             the mnPrAcmProfileText column in the ACM Profile Table."
    ::= { mnPrAcmEntry  9 }

-------------------------------------------------------------------------------
-- ACM Profile Table
-------------------------------------------------------------------------------

mnPrAcmProfileTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrAcmProfileEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing information about each current ACM profile for
             each radio within the link."
    ::= { mnPrConfigurationObjects  25 }

mnPrAcmProfileEntry OBJECT-TYPE
    SYNTAX  MnPrAcmProfileEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "The information for a single ACM Profile on a single radio."
    INDEX   { mnRadioIndex, mnPrAcmProfileIndex }
    ::= { mnPrAcmProfileTable  1 }

MnPrAcmProfileEntry ::=
    SEQUENCE {
        mnPrAcmProfileIndex
            INTEGER,

        mnPrAcmProfileText
            DisplayString
    }

mnPrAcmProfileIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..1024)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The index for this entry."
    ::= { mnPrAcmProfileEntry  1 }

mnPrAcmProfileText OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "All the information about the profile as one text string."
    ::= { mnPrAcmProfileEntry  2 }


-------------------------------------------------------------------------------
-- RADIUS Server Configuration Table 
-------------------------------------------------------------------------------

mnPrRADSrvConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrRADSrvConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "RADIUS Servers for this radio."
    ::= { mnPrConfigurationObjects 26 }

mnPrRADSrvConfEntry OBJECT-TYPE
    SYNTAX  MnPrRADSrvConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
            "One trap destination entry."
    INDEX   { mnRadioIndex, mnPrRADSrvIndex }
    ::= { mnPrRADSrvConfTable 1 }

MnPrRADSrvConfEntry ::=
    SEQUENCE {
        mnPrRADSrvIndex
            INTEGER,

        mnPrRADSrvConfName
            DisplayString,

        mnPrRADSrvConfAuthPort
            INTEGER,

        mnPrRADSrvConfSecret
            DisplayString
    }

mnPrRADSrvIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..8)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
            "The index of the RADIUS Server configuration entry."
    ::= { mnPrRADSrvConfEntry 1 }

mnPrRADSrvConfName OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The name of the RADIUS Server.  Initially IPv4 address
              but other formats may be supported in the future."
    ::= { mnPrRADSrvConfEntry 2 }

mnPrRADSrvConfAuthPort OBJECT-TYPE
    SYNTAX  INTEGER (1024..65535)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The UDP port to use for the RADIUS authentication service.
              The default is 1812."
    ::= { mnPrRADSrvConfEntry 3 }

mnPrRADSrvConfSecret OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "The shared secret to use to authenticate the radio with
              the RADIUS Server."
    ::= { mnPrRADSrvConfEntry 4 }


-------------------------------------------------------------------------------
-- RRP+ Ring Table
-------------------------------------------------------------------------------

mnPrRRPPTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrRRPPEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing information about 
             each RRP+ ring supported by this link."
    ::= { mnPrConfigurationObjects  27 }

mnPrRRPPEntry OBJECT-TYPE
    SYNTAX  MnPrRRPPEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "The information for a single
             RRP+ ring supported by this link."
    INDEX   { mnRadioIndex, mnPrRRPPIndex }
    ::= { mnPrRRPPTable  1 }

MnPrRRPPEntry ::=
    SEQUENCE {

        mnPrRRPPIndex
            INTEGER,

        mnPrRRPPRowStatus
            RowStatus,

        mnPrRRPPStatus
            INTEGER,

        mnPrRRPPConfMode
            INTEGER,

        mnPrRRPPConfPollInterval
            INTEGER,

        mnPrRRPPConfThreshold
            INTEGER,

        mnPrRRPPConfFwdDelay
            INTEGER,

        mnPrRRPPConfLdpVlan
            INTEGER,

        mnPrRRPPConfRingPort1
            INTEGER,

        mnPrRRPPConfRingPort2
            INTEGER,

        mnPrRRPPConfProtVlans
            DisplayString,

        mnPrRRPPConfADPorts
            DisplayString,
            
        mnPrRRPPADPortAvailability
            Display64
            

    }


mnPrRRPPIndex OBJECT-TYPE
    SYNTAX  INTEGER (1..10)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "This is also the ring number..."
    ::= { mnPrRRPPEntry  1 }

mnPrRRPPRowStatus OBJECT-TYPE
    SYNTAX  RowStatus
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "The status of this conceptual row in the mnPrRRPPTable:
                      active (1)
                      notInService (2)
                      notReady (3)      (not setable, result of failure to go active)
                      createAndGo (4)   (can be set, but not supported by this table)
                      createAndWait(5)
                      destroy (6)
             A row is not qualified for activation until
             instances of all columns of the row
             have an appropriate value."
    ::= { mnPrRRPPEntry  2 }

mnPrRRPPStatus OBJECT-TYPE
    SYNTAX  INTEGER {
                 ringok(1),
                 ringbroken(2),
                 offline(3),
                 notapplicable(4),
                 notsupported(5)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrRRPPEntry  3 }

mnPrRRPPConfMode OBJECT-TYPE
    SYNTAX  INTEGER {
                 disabled(1),
                 passthrough(2),
                 switch(3)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrRRPPEntry  4 }

mnPrRRPPConfPollInterval OBJECT-TYPE
    SYNTAX  INTEGER (10..10000)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrRRPPEntry  5 }

mnPrRRPPConfThreshold OBJECT-TYPE
    SYNTAX  INTEGER (50..50000)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrRRPPEntry  6 }

mnPrRRPPConfFwdDelay OBJECT-TYPE
    SYNTAX  INTEGER (10..10000)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           ""
    ::= { mnPrRRPPEntry  7 }

mnPrRRPPConfLdpVlan OBJECT-TYPE
    SYNTAX  INTEGER (1..4094)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "The VLAN ID used for this ring's LDP packets."
    ::= { mnPrRRPPEntry  8 }

mnPrRRPPConfRingPort1 OBJECT-TYPE
    SYNTAX  INTEGER (1..21)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "1-based port number of the lower-numbered ring port."
    ::= { mnPrRRPPEntry  9 }

mnPrRRPPConfRingPort2 OBJECT-TYPE
    SYNTAX  INTEGER (1..21)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "1-based port number of the higher-numbered ring port."
    ::= { mnPrRRPPEntry  10 }

mnPrRRPPConfProtVlans OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Human-readable list of protected VLAN IDs for this ring, separated by commas.
             Sample: '101,102'"
    ::= { mnPrRRPPEntry  11 }

mnPrRRPPConfADPorts OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Human-readable list of Add-Drop ports for this ring on this terminal, 
             separated by commas.  Sample: 'E2-A(101),N1-A(101),N2-A(102)' where
             E2=Eth2, A=Access (T=trunk), 101=VLAN ID. "
    ::= { mnPrRRPPEntry  12 }

mnPrRRPPADPortAvailability OBJECT-TYPE
    SYNTAX  Display64
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "64-bit unsigned integer that consists of 32 2-bit fields where each
             field represents how a particular Ethernet port can be used as an
             Add/Drop port for the ring in question.  The least-significant 
             field (bits 1 and 0) corresponds to port 1 (Eth1). Conventional 1-based
             port numbers (indexes) are used, so the first 7 ports are:
               1:  Eth1
               2:  Eth2
               3:  NMS1
               4:  NMS2
               5:  Xover
               6:  CPU
               7:  Link
             The values within the 2-bit fields have the following meanings:
               0:  Port is unavailable for this ring
               1:  Port can be used only as a trunk mode A/D port for this ring
               2:  Port can be used only as an access mode A/D port for this ring (not used)
               3:  Port can be used as either a trunk mode or access mode A/D port 
             As with other read-only 64-bit unsigned objects, the object is an ASCII string 
             representation of a decimal number representing a 64-bit unsigned number."
    ::= { mnPrRRPPEntry  13 }


-------------------------------------------------------------------------------
-- Channel Unit Configuration Table
-------------------------------------------------------------------------------

mnPrCUConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrCUConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing various general configuration
             parameters for each channel unit (radio) within the
             link.  For MX objects only."
    ::= { mnPrConfigurationObjects  28 }

mnPrCUConfEntry OBJECT-TYPE
    SYNTAX  MnPrCUConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of general configuration information for a
             single channel unit (radio) within the link. "
    INDEX   { mnRadioIndex }
    ::= { mnPrCUConfTable  1 }

MnPrCUConfEntry ::=
    SEQUENCE {
        mnPrCUConfRRPPLLFHysterSetTime
            INTEGER,

        mnPrCUConfRRPPLLFHysterClrTime
            INTEGER

    }

mnPrCUConfRRPPLLFHysterSetTime OBJECT-TYPE
    SYNTAX  INTEGER (0..3600)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Number of seconds to require that BER 10^-6 condition must be true before
             the associated alarm is set, thus affecting LLF and thus RRP+.  Can be used
             to keep a fluttering BER 10^-6 condition from causing frequent RRP+ ring
             changes.  Note that if there is a hard break elsewhere in the ring, we
             will not let fluttering BER break the ring at a second place."
    ::= { mnPrCUConfEntry  1 }

mnPrCUConfRRPPLLFHysterClrTime OBJECT-TYPE
    SYNTAX  INTEGER (0..3600)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Number of seconds to require that BER 10^-6 condition must be false before
             the associated alarm is cleared, thus affecting LLF and thus RRP+.  Can be used
             to keep a fluttering BER 10^-6 condition from causing frequent RRP+ ring
             changes.  Note that if there is a hard break elsewhere in the ring, we
             will not let fluttering BER break the ring at a second place."
    ::= { mnPrCUConfEntry  2 }


-------------------------------------------------------------------------------
-- System Command Processor Control Table
-------------------------------------------------------------------------------

mnPrSCPCtlTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrSCPCtlEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table that controls the System Command Processor
             for each radio in the link."
    ::= { mnPrUtilityObjects  1 }

mnPrSCPCtlEntry OBJECT-TYPE
    SYNTAX  MnPrSCPCtlEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of System Command Processor control information
             for a single radio within the link."
    INDEX   { mnRadioIndex }
    ::= { mnPrSCPCtlTable  1 }

MnPrSCPCtlEntry ::=
    SEQUENCE {
        mnPrSCPCtlCmd
            INTEGER,

        mnPrSCPCtlCmdStringArg
            DisplayString,

        mnPrSCPCtlCmdNumArg
            INTEGER,

        mnPrSCPCtlCmdProgress
            INTEGER,

        mnPrSCPCtlCmdResult
            INTEGER
    }

mnPrSCPCtlCmd OBJECT-TYPE
    SYNTAX  INTEGER {
                 idle(1),
                 resetLatchedAlarms(2),
                 resetCustomPerformanceInterval(3),
                 bootPrimaryImage(4),
                 bootSecondaryImage(5),
                 reconfigureModem(6),
                 restoreConfFactoryDefaults(7),
                 copySWSecImageToPriImage(8),
                 copySWPriImageToSecImage(9),
                 tftpDownloadSWBootloader(10),
                 tftpDownloadSWSecondaryImage(11),
                 tftpDownloadFpgaModemTx(12),
                 tftpDownloadFpgaModemRx(13),
                 tftpDownloadFpgaE1(14),
                 tftpDownloadFpgaE3(15),
                 tftpDownloadImage(16),     -- NumArg = image_id
                 alarmSetClear(17),
                 tftpDownloadFpgaEth(18),
                 sshKeyGen(19),
                 sntpPollNow(20),
                 sendPING(21),              -- StringArg = target IP address
                 resetAlarmLog(22),
                 resetEventLog(23),
                 copySWSecImageFromFarToNear(24),
                 restoreAlarmFactoryDefaults(25),
                 changeAggregateBERT(26),   -- NumArg = 1 - enable, 2 - disable
                 resetLimABERTStats(27),
                 resetLimBBERTStats(28),
                 resetAggBERTStats(29),
                 resetPerformanceHistory(30),
                 uploadPerformanceHistory(31),
                 resendTraps(32),
                 copyImage(33),             -- NumArg: byte[0]=src_idu1, byte[1]=src_img, byte[2]=dst_idu, byte[3]=dst_img
                 evaluateConfig(34),
                 passwordChangeResponse(35),
                 copySIM(36),
                 modifyChannelGroups(37),
                 synchPerformanceHistory(39),
                 revertPropToCurConfig(40),
                 resetSystemLog(41),
                 resetEthStats(42),
                 uploadDiagSnapshot(43),    
                 addRrppVlan(44)            -- StringArg = <ringID>,<vlanID>,<vlanName>,<port-mask>
                                            -- (port-mask is decimal-formatted-64-bit integer in 
                                            --  same format as mnPrRRPPADPortAvailability)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "The system command control object for this
             radio. Setting this object to a value other than
             `idle' (1) has the side effect of invoking the
             associated system command.

             When read, the value of this object provides an
             indication of the currently  invoked system
             control command, if any.  The value of this
             object  returns to `idle' (1) when the invoked
             command has completed execution.

             Writing 'idle' to the object will cancel the
             command that is in progress.

             Whenever the value of this object is not `idle',
             attempts to write a value to this object other than
             'idle' will return an error."
    ::= { mnPrSCPCtlEntry  1 }

mnPrSCPCtlCmdStringArg OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "A string argument used by the System Command Processor.  Can
             be used for a filename, for example."
    ::= { mnPrSCPCtlEntry  2 }

mnPrSCPCtlCmdNumArg OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "A numeric argument used by the System Command Processor."
    ::= { mnPrSCPCtlEntry  3 }

mnPrSCPCtlCmdProgress OBJECT-TYPE
    SYNTAX  INTEGER (0..100)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "This object provides an indication of the
             progress of the current system command.
             The value returned by this object is a percentage
             representing the approximate percentage of the
             estimated total command time that has elapsed.
             If the current value of the mnPrSCPCtlCmd object is
             `idle' the value of this object is zero(0)."
    ::= { mnPrSCPCtlEntry  4 }

mnPrSCPCtlCmdResult OBJECT-TYPE
    SYNTAX  INTEGER {
                 inProgress(1),
                 success(2),
                 failure(3),
                 aborted(4)
               }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "The system control command result. The
             enumerated values are interpreted as follows:

             `inProgress' - The system command is still in
             progress.

             `success' - The system command completed
             successfully.

             `failure' - The system command did not complete,
             or completed with errors.

             `aborted' - The system command was cancelled
             by the user (by writing 'idle' to mnPrSCPCtlCmd)."
    ::= { mnPrSCPCtlEntry  5 }


-------------------------------------------------------------------------------
-- Diagnostic Snapshot Facility Table
-------------------------------------------------------------------------------

mnPrDiagSnapTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrDiagSnapEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table that allows management applications to dump binary
             diagnostic snapshot data from various sources in the modem (and 
             potentially from non-modem sources in the future)."
    ::= { mnPrUtilityObjects  2 }

mnPrDiagSnapEntry OBJECT-TYPE
    SYNTAX  MnPrDiagSnapEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of Diagnostic Snapshot objects for a single radio 
             within the link."
    INDEX   { mnRadioIndex }
    ::= { mnPrDiagSnapTable  1 }

MnPrDiagSnapEntry ::=
    SEQUENCE {
        mnPrDiagSnapBuffer
            OCTET STRING,

        mnPrDiagSnapSource
            INTEGER,

        mnPrDiagSnapOverride
            INTEGER
    }

mnPrDiagSnapBuffer OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE (512))
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "This is the object that returns the snapshot data.
             If mnPrDiagSnapSource's value is the default ('none(1)'), then 
             this object returns an octet string containing two zero bytes, 
             with no other side-effects.  This ensures that get-nexting 
             through the table will not cause any diagnostic snapshotting and
             will not result in SNMP failures.
           
             If mnPrDiagSnapSource's value is not 'none(1)', then a get to 
             the object will return the next 512 bytes of the entire snapshot 
             (or less, if there is not at least 512 bytes left to transfer.)
           
             When there is no more data to transfer, a get will result in 
             an SNMP error, and mnPrDiagSnapSource will then be set back to 
             'none(1)'."
    ::= { mnPrDiagSnapEntry  1 }

mnPrDiagSnapSource OBJECT-TYPE
    SYNTAX  INTEGER {
                 none(1),
                 adcoutput(2),
                 slicerinput(3)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object selects the source of the diagnostic snapshot (and 
             also implicitly activates the diagnostic snapshot facility).
             
             An application seeking to do a diagnostic snapshot should
             first confirm that this object is set to 'none(1)', which means
             that no other application/user is using the facility.  Then
             the application should attempt to set this object to specify
             the requested source.  If the result of that set operation is
             successful, then the application can continue and read data 
             from mnPrDiagSnapBuffer.  If the result of the set operation 
             is a failure, the application should back off and wait until
             this object is 'none(1)' again.
             
             If the diagnostic snapshot facility is activated, but there is
             no get or set activity to its object for 10 seconds, this 
             object will return to 'none(1)'.
             
             To cancel a diagnostic snapshot, an application can set this
             object to 'none(1)'."  
    ::= { mnPrDiagSnapEntry  2 }

mnPrDiagSnapOverride OBJECT-TYPE
    SYNTAX  INTEGER {
                 normal(1),
                 override(2)
               }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "Under some circumstances, a snapshot dump can have side-effects that
             affect customer traffic on the link.  By default, the diagnostic 
             snapshot facility will reject snapshot requests that will have these
             negative effects.  If an application wants to perform the snapshot
             anyway, it must set this object to 'override(2)'.  Doing so will
             also set the minor 'Modem DSP Sample Override' alarm."
    ::= { mnPrDiagSnapEntry  3 }


-------------------------------------------------------------------------------
-- VLAN Device Configuration Table (used for Ethernet LIMs or MX IE)
-------------------------------------------------------------------------------

mnPrVlanDeviceConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrVlanDeviceConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing configuration information
             about each VLAN-capable device within this link."
    ::= { mnPrVlanObjects  1 }

mnPrVlanDeviceConfEntry OBJECT-TYPE
    SYNTAX  MnPrVlanDeviceConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of configuration information about a
             single Vlan device within this link. "
    INDEX   { mnRadioIndex, mnLIMIndex }
    ::= { mnPrVlanDeviceConfTable  1 }

MnPrVlanDeviceConfEntry ::=
    SEQUENCE {
        mnPrVlanDeviceCapabilities
            OCTET STRING,

        mnPrVlanDeviceTfcClsEnabled
            TruthValue,

        mnPrVlanDeviceNumTrafficClasses
            INTEGER,

        mnPrVlanTrafficClassOrder
            INTEGER,

        mnPrVlanTrafficClassWieghted
            TruthValue,

        mnPrVlanDeviceVlanVersionNumber
            INTEGER,

        mnPrVlanDeviceMaxVlanId
            INTEGER,

        mnPrVlanDeviceMaxSupportedVlans
            INTEGER,

        mnPrVlanDeviceNumVlans
            INTEGER,

        mnPrVlanDeviceNumDeletes
            Counter32,

        mnPrVlanDeviceLinkLossForwarding
            INTEGER,

        mnPrVlanDevice1qEnabled
            TruthValue,

        mnPrVlanDeviceIgnoreTags
            TruthValue,
            
        mnPrVlanDeviceRateLimitUnit
            INTEGER,
            
        mnPrVlanDeviceLinkUntagEnable
            TruthValue, 
            
        mnPrVlanDeviceLinkFrameMode
            INTEGER
    }


mnPrVlanDeviceCapabilities OBJECT-TYPE
    SYNTAX  OCTET STRING
   -- BITS
   -- {
   --     mnPrVlanDeviceExtendedFilteringServices(0),
                              -- can perform filtering of
                              -- individual multicast addresses
                              -- controlled by GMRP. (FALSE)
   --     mnPrVlanDeviceTrafficClasses(1),
                              -- can map user priority to
                              -- multiple traffic classes. (TRUE)
   --     mnPrVlanDeviceStaticEntryIndividualPort(2),
                              -- dot1qStaticUnicastReceivePort &
                              -- dot1qStaticMulticastReceivePort
                              -- can represent non-zero entries. (FALSE)
   --     mnPrVlanDeviceIVLCapable(3),    Independent VLAN Learning. (FALSE)
   --     mnPrVlanDeviceSVLCapable(4),    Shared VLAN Learning. (TRUE)
   --     mnPrVlanDeviceHybridCapable(5),
                              -- both IVL & SVL simultaneously. (FALSE)
   --     mnPrVlanDeviceConfigurablePvidTagging(6),
                              -- whether the implementation
                              -- supports the ability to
                              -- override the default PVID
                              -- setting and its egress status
                              -- (VLAN-Tagged or Untagged) on
                              -- each port. (TRUE)
   --     mnPrVlanDeviceLocalVlanCapable(7)
                              -- can support multiple local
                              -- bridges, outside of the scope
                              -- of 802.1Q defined VLANs. (FALSE)
   -- }
    ACCESS  read-only
    STATUS      mandatory
    DESCRIPTION
        "Indicates the optional parts of IEEE 802.1D and 802.1Q
        that are implemented by this device and are manageable
        through this MIB.  Capabilities that are allowed on a
        per-port basis are indicated in mnPrPortCapabilities.
        This maps directly to dot1dDeviceCapabilities."
    REFERENCE
        "ISO/IEC 15802-3 Section 5.2,
        IEEE 802.1Q/D11 Section 5.2, 12.10.1.1.3/b/2"
    ::= { mnPrVlanDeviceConfEntry 1 }

mnPrVlanDeviceTfcClsEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    ACCESS  read-write
    STATUS      mandatory
    DESCRIPTION
        "The value true(1) indicates that Traffic Classes are
        enabled on this bridge.  When false(2), the bridge
        operates with a single priority level for all traffic.
        Maps directly to dot1dTrafficClassesEnabled."
    DEFVAL      { true }
    ::= { mnPrVlanDeviceConfEntry 2 }

mnPrVlanDeviceNumTrafficClasses OBJECT-TYPE
    SYNTAX      INTEGER (1..8)
    ACCESS  read-only
    STATUS      mandatory
    DESCRIPTION
        "The number of egress traffic classes supported on this
        device.  This object may optionally be read-only.  On this
        device, it is set to 4.
        Maps to dot1dPortNumTrafficClasses, but is reported per
        device instead of per port."
    ::= { mnPrVlanDeviceConfEntry 3 }

mnPrVlanTrafficClassOrder OBJECT-TYPE
    SYNTAX      INTEGER {
                    ieee8021pIpV4ipV6Default(1),
                    ipV4ipV6Ieee8021pDefault(2),
                    ieee8021pDefault(3),
                    ipV4ipV6Default(4),
                    default(5)
                }
    ACCESS  read-write
    STATUS      mandatory
    DESCRIPTION
        "When mnPrVlanDeviceTrafficClassesEnabled is true, this
        will tell the device in what order to look at incomming packets
        for sorting into traffic classes.  For example, if option 1 is
        selected, the device will first look at the VLAN tag containing
        IEEE 802.1p information if present, else it will look at the
        IPv4 Type of Service field or the IPv6 Traffic Classes field if
        present, else it will use the default priority determined by
        mnPrVLANPortDefaultUserPriority.  If option 5 is selected, the
        device will only look at the default priority for the port."
    ::= { mnPrVlanDeviceConfEntry 4 }

mnPrVlanTrafficClassWieghted OBJECT-TYPE
    SYNTAX      TruthValue
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "When mnPrVlanDeviceTrafficClassesEnabled is true, this
        will tell the device how to handle egressing packets based upon
        traffic class.  When false(2), it will output all high priority
        packets before outputing any lower priority packets.  When
        true(1), it will output based on an 8-4-2-1 packet wieghting
        scheme based upon traffic class."
    ::= { mnPrVlanDeviceConfEntry 5 }

mnPrVlanDeviceVlanVersionNumber OBJECT-TYPE
    SYNTAX      INTEGER {
                    version1(1)
                }
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "The version number of IEEE 802.1Q that this device
        supports.
        Maps directly to dot1qVlanVersionNumber."
    REFERENCE
        "IEEE 802.1Q/D11 Section 12.10.1.1"
    ::= { mnPrVlanDeviceConfEntry 6 }

mnPrVlanDeviceMaxVlanId OBJECT-TYPE
    SYNTAX      INTEGER
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "The maximum IEEE 802.1Q VLAN ID that this device
        supports.
        Maps directly to dot1qMaxVlanId."
    REFERENCE
        "IEEE 802.1Q/D11 Section 9.3.2.3"
    ::= { mnPrVlanDeviceConfEntry 7 }

mnPrVlanDeviceMaxSupportedVlans OBJECT-TYPE
    SYNTAX      INTEGER
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "The maximum number of IEEE 802.1Q VLANs that this
        device supports.
        Maps directly to dot1qMaxSupportedVlans"
    REFERENCE
        "IEEE 802.1Q/D11 Section 12.10.1.1"
    ::= { mnPrVlanDeviceConfEntry 8 }

mnPrVlanDeviceNumVlans OBJECT-TYPE
    SYNTAX      INTEGER
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "The current number of IEEE 802.1Q VLANs that are
        configured in this device.
        Maps directly to dot1qNumVlans"
    REFERENCE
        "IEEE 802.1Q/D11 Section 12.7.1.1"
    ::= { mnPrVlanDeviceConfEntry 9 }

mnPrVlanDeviceNumDeletes OBJECT-TYPE
    SYNTAX     Counter32
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
        "The number of times a VLAN entry has been deleted from
        the mnPr1qVlanCurrentTable (for any reason).  If an entry
        is deleted, then inserted, and then deleted, this
        counter will be incremented by 2.
        Maps directly to dot1qVlanNumDeletes."
    ::= { mnPrVlanDeviceConfEntry 10 }

mnPrVlanDeviceLinkLossForwarding OBJECT-TYPE
    SYNTAX      INTEGER {
                    noLlf(1),
                    totalLlf(2),
                    linkPortOnly(3),
                    totalLlfFeLos(4)
                }
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "Determines how the device ports should behave when the
        microwave link is lost.  If no_llf(1) is selected, then
        the device will continue to operate.  If total_llf(2) is
        selected, then all ports on the device will be disabled.
        If link_port_only(3) is selected, then data will no longer
        be sent to the link port, but the other ports will remain
        active.  This is useful if you are switching data locally.
        totalLlfFeLos(4) is like totalLlf(2), but also acts if the 
        far end LIM sees a LOS (if all ports are in LOS state)."
    ::= { mnPrVlanDeviceConfEntry 11 }


mnPrVlanDevice1qEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "Enables the device for 802.1Q VLANS.  If it is false(2),
        the device operates as a simple transperant bridge."
    ::= { mnPrVlanDeviceConfEntry 12 }


mnPrVlanDeviceIgnoreTags OBJECT-TYPE
    SYNTAX      TruthValue
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "Tells the device to ignore any incoming tags.  All tags
        will have the default VLAN-Id for its ingress port
        associcated with it.  The original tag will be kept in
        tact, and a second tag will be added."
    ::= { mnPrVlanDeviceConfEntry 13 }


mnPrVlanDeviceRateLimitUnit OBJECT-TYPE
    SYNTAX      INTEGER (0..100000)
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "..."
    ::= { mnPrVlanDeviceConfEntry 14 }


mnPrVlanDeviceLinkUntagEnable OBJECT-TYPE
    SYNTAX      TruthValue
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "..."
    ::= { mnPrVlanDeviceConfEntry 15 }

mnPrVlanDeviceLinkFrameMode OBJECT-TYPE
    SYNTAX      INTEGER {
                    frameModeNormal(1),
                    frameModeProvider(2)
                }
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "Normal   (Customer Port, Single VLAN tagging)
         Provider (Q-in-Q)
        ..."
    ::= { mnPrVlanDeviceConfEntry 16 }

-------------------------------------------------------------------------------
-- VLAN Port Configuration Table (used for 100 BaseT LIMs Only)
-------------------------------------------------------------------------------

mnPrVlanPortConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrVlanPortConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing configuration information
             about each VLAN-capable port within this link."
    ::= { mnPrVlanObjects  2 }

mnPrVlanPortConfEntry OBJECT-TYPE
    SYNTAX  MnPrVlanPortConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of configuration information about a
             single VLAN port within this link. "
    INDEX   { mnTribIndex }
    -- Index is in form RLTT, where R=radio number, L=LIM number
    -- and TT is port number, as follows:
    --   1=IE1         or  Port 1
    --   2=IE2             Port 2
    --   3=NMS1            Port 3
    --   4=NMS2            Port 4
    --   5=Xover
    --   6=CPU
    --   7=Link
    
    ::= { mnPrVlanPortConfTable  1 }

MnPrVlanPortConfEntry ::=
    SEQUENCE {
        mnPrVlanPortCapabilities
            OCTET STRING,

        mnPrVlanPortDefaultUserPriority
            INTEGER,

        mnPrVlanPortPvid
            INTEGER,

        mnPrVlanPortAcceptableFrameTypes
            INTEGER,

        mnPrVlanPortIngressFiltering
            TruthValue,

        mnPrVlanPortGvrpStatus
            TruthValue,

--        mnPrVlanPortDoubleTagged
--            TruthValue,

--        mnPrVlanPortAccessability
--            PortList,

        mnPrVlanPortLineSpeed
            LanSpeed,

        mnPrVlanPortRateLimitPri0
            RateLimit,

        mnPrVlanPortRateLimitPri1
            RateLimit,

        mnPrVlanPortRateLimitPri2
            RateLimit,

        mnPrVlanPortRateLimitPri3
            RateLimit,

        mnPrVlanPortUntagEnable
            TruthValue,

        mnPrVlanPortMaxFrameSize
            INTEGER,

        mnPrVlanPortRateLimitMult
            INTEGER,

        mnPrVlanPortRateControlMode
            INTEGER,

        mnPrVlanPortFrameMode
            INTEGER,

        mnPrVlanPortIngressFilterMode
            INTEGER,

        mnPrVlanPortIngressRateLimit
            INTEGER,

        mnPrVlanPortIngressBurstAlloc
            INTEGER,

        mnPrVlanPortLearningMode
            INTEGER,

        mnPrVlanPortFloodMode
            INTEGER,

        mnPrVlanPortEthertype
            INTEGER

    }

mnPrVlanPortCapabilities OBJECT-TYPE
    SYNTAX  OCTET STRING
    --BITS {
    --    dot1qDot1qTagging(0),  supports 802.1Q VLAN tagging of
                              -- frames and GVRP. (TRUE)
    --    dot1qConfigurableAcceptableFrameTypes(1),
                              -- allows modified values of
                              -- mnPrVlanPortAcceptableFrameTypes. (TRUE)
    --    dot1qIngressFiltering(2)
                              -- supports the discarding of any
                              -- frame received on a Port whose
                              -- VLAN classification does not
                              -- include that Port in its Member
                              -- set. (TRUE)
    --}
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "Indicates the parts of IEEE 802.1D and 802.1Q that are
        optional on a per-port basis that are implemented by
        this device and are manageable through this MIB.
        Maps directly to dot1dPortCapabilities."
    REFERENCE
        "ISO/IEC 15802-3 Section 5.2,
        IEEE 802.1Q/D11 Section 5.2"
    ::= { mnPrVlanPortConfEntry 1 }

mnPrVlanPortDefaultUserPriority OBJECT-TYPE
    SYNTAX      INTEGER (0..7)
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The default ingress User Priority for this port.  This
        only has effect on media, such as Ethernet, that do not
        support native User Priority.
        Maps directly to dot1dPortDefaultUserPriority"
    ::= { mnPrVlanPortConfEntry 2 }

mnPrVlanPortPvid OBJECT-TYPE
    SYNTAX      INTEGER (1..4094)
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The PVID, the VLAN ID assigned to untagged frames or
        Priority-Tagged frames received on this port.
        Maps directly to dot1qPvid."
    REFERENCE
        "IEEE 802.1Q/D11 Section 12.10.1.1"
    DEFVAL      { 1 }
    ::= { mnPrVlanPortConfEntry 3 }

mnPrVlanPortAcceptableFrameTypes OBJECT-TYPE
    SYNTAX      INTEGER {
                    admitAll(1),
                    admitOnlyVlanTagged(2)
                }
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "When this is admitOnlyVlanTagged(2) the device will
        discard untagged frames or Priority-Tagged frames
        received on this port.  When admitAll(1), untagged
        frames or Priority-Tagged frames received on this port
        will be accepted and assigned to the PVID for this port.

        This control does not affect VLAN independent BPDU
        frames, such as GVRP and STP.  It does affect VLAN
        dependent BPDU frames, such as GMRP.

        On Proteus AMT, this can only be set to admitAll(1).

        Maps directly to dot1qPortAcceptableFrameTypes."
    REFERENCE
        "IEEE 802.1Q/D11 Section 12.10.1.3"
    DEFVAL      { admitAll }
    ::= { mnPrVlanPortConfEntry 4 }

mnPrVlanPortIngressFiltering OBJECT-TYPE
    SYNTAX      TruthValue
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "When this is true(1) the device will discard incoming
        frames for VLANs which do not include this Port in its
        Member set.  When false(2), the port will accept all
        incoming frames.

        This control does not affect VLAN independent BPDU
        frames, such as GVRP and STP.  It does affect VLAN
        dependent BPDU frames, such as GMRP.
        Maps directly to dot1qPortIngressFiltering"
    REFERENCE
        "IEEE 802.1Q/D11 Section 12.10.1.4"
    DEFVAL      { false }
    ::= { mnPrVlanPortConfEntry 5 }

mnPrVlanPortGvrpStatus OBJECT-TYPE
    SYNTAX      TruthValue
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "The state of GVRP operation on this port.  The value
        true(1) indicates that GVRP is enabled on this port,
        as long as dot1qGvrpStatus is also enabled for this
        device.  When false(2) but dot1qGvrpStatus is still
        enabled for the device, GVRP is disabled on this port:
        any GVRP packets received will be silently discarded and
        no GVRP registrations will be propagated from other
        ports.  This object affects all GVRP Applicant and
        Registrar state machines on this port.  A transition
        from false(2) to true(1) will cause a reset of all
        GVRP state machines on this port.
        On Proteus AMT, this is always false(2)."
    DEFVAL      { false }
    ::= { mnPrVlanPortConfEntry 6 }

--mnPrVlanPortDoubleTagged OBJECT-TYPE
--    SYNTAX      TruthValue
--    ACCESS      read-write
--    STATUS      mandatory
--    DESCRIPTION
--        "When true(1), this port will add a second tag to to all
--        egress packets, based upon the ingress PVID of the packet.
--        If the packet is not tagged, it will add a single tag."
--    ::= { mnPrVlanPortConfEntry 7 }

--mnPrVlanPortAccessability OBJECT-TYPE
--    SYNTAX      PortList
--    ACCESS      read-write
--    STATUS      mandatory
--    DESCRIPTION
--        "A list of all the ports on the same device that this port
--        may communicate with.  If two ports are not allowed to
--        communicate with one another, then no packets, even broadcast
--        packets, will be passed between the ports.  Note that changing
--        this value for a single port will also change the value for
--        any related ports.  Useful for setting up port-based VLAN."
--    ::= { mnPrVlanPortConfEntry 8 }

mnPrVlanPortLineSpeed OBJECT-TYPE
    SYNTAX      LanSpeed
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The speed of this port.  It can either Auto-negotiate
        with the link partner (1), be set to half-duplex
        10 BaseT(2), half-duplex 100 BaseT(3), full-duplex
        100 BaseT(4), full-duplex 10 BaseT(6), full-duplex
        1000 BaseT(7) or powered down (5)."
    ::= { mnPrVlanPortConfEntry 9 }

mnPrVlanPortRateLimitPri0 OBJECT-TYPE
    SYNTAX      RateLimit
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The ingress rate limit for priority 0 frames on this port.
        Note that the valid values are 100 Mbps (no limiting), 128
        kbps, 256 kbps, 512 kbps, 1 mbps, 2 mbps, 4 mbps, or 8 mbps
        are the only valid values.  16, 32, and 64 mbps are not
        available for priority 0 packets."
    ::= { mnPrVlanPortConfEntry 10 }

mnPrVlanPortRateLimitPri1 OBJECT-TYPE
    SYNTAX      RateLimit
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The rate limit for priority 1 frames on this port.  Note
        that the valid values are either the same value as priority
        0 packets or twice the value of priority 0 packets.  All
        other set attempts will be rejected.  Also, this value will
        change if mnPrVlanPortRateLimitPri0 changes."
    ::= { mnPrVlanPortConfEntry 11 }

mnPrVlanPortRateLimitPri2 OBJECT-TYPE
    SYNTAX      RateLimit
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The rate limit for priority 2 frames on this port.  Note
        that the valid values are either the same value as priority
        1 packets or twice the value of priority 1 packets.  All
        other set attempts will be rejected.  Also, this value will
        change if mnPrVlanPortRateLimitPri1 changes."
    ::= { mnPrVlanPortConfEntry 12 }

mnPrVlanPortRateLimitPri3 OBJECT-TYPE
    SYNTAX      RateLimit
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The rate limit for priority 3 frames on this port.  Note
        that the valid values are either the same value as priority
        2 packets or twice the value of priority 2 packets.  All
        other set attempts will be rejected.  Also, this value will
        change if mnPrVlanPortRateLimitPri2 changes."
    ::= { mnPrVlanPortConfEntry 13 }

mnPrVlanPortUntagEnable OBJECT-TYPE
    SYNTAX      TruthValue 
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "..."
    ::= { mnPrVlanPortConfEntry 14 }

mnPrVlanPortMaxFrameSize OBJECT-TYPE
    SYNTAX      INTEGER (1518..10240) 
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "..."
    ::= { mnPrVlanPortConfEntry 15 }

mnPrVlanPortRateLimitMult OBJECT-TYPE
    SYNTAX      INTEGER (0..31)
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "..."
    ::= { mnPrVlanPortConfEntry 16 }

mnPrVlanPortRateControlMode OBJECT-TYPE
    SYNTAX      INTEGER {
                    disable(1),
                    enable(2)        -- Note TYPE of Flow Control?
                }
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "..."
    ::= { mnPrVlanPortConfEntry 17 }

mnPrVlanPortFrameMode OBJECT-TYPE
    SYNTAX      INTEGER {
                    frameModeNormal(1),
                    frameModeProvider(2)
                }
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "Normal   (Customer Port, Single VLAN tagging)
         Provider (Q-in-Q)
        ..."
    ::= { mnPrVlanPortConfEntry 18 }

mnPrVlanPortIngressFilterMode OBJECT-TYPE
    SYNTAX      INTEGER {
                    qModeDisabled(1),
                    qModeFallback(2),
                    qModeCheck(3),
                    qModeSecure(4)
                }
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "..."
    ::= { mnPrVlanPortConfEntry 20 }

mnPrVlanPortIngressRateLimit OBJECT-TYPE
    SYNTAX      INTEGER 
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "Port Ingress Rate Limit (in kbps) for MX ports.  If set to 0, there 
          is no ingress rate limiting.  This is the 'leaky bucket' leak rate."
    ::= { mnPrVlanPortConfEntry 21 }

mnPrVlanPortIngressBurstAlloc OBJECT-TYPE
    SYNTAX      INTEGER 
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "Size of allowable traffic burst (in kbits) for MX ports.  This is
         the size of the 'leaky bucket'.  If set to 0, default ingress
         buffers still allow some burstiness. "
    ::= { mnPrVlanPortConfEntry 22 }

mnPrVlanPortLearningMode OBJECT-TYPE
    SYNTAX      INTEGER {
                    disable(1),
                    enable(2)        -- This is the default
                }
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "Learning Mode for MX Ethernet port.  Originally, learning was always 
         enabled.  This object allows learning to be disabled in the rare cases 
         where that might be useful."
    ::= { mnPrVlanPortConfEntry 23 }

mnPrVlanPortFloodMode OBJECT-TYPE
    SYNTAX      INTEGER {
                    blockUnkDestAddr(1),      -- (unicast or multicast)
                    blockUnkMulticastAddr(2),
                    blockUnkUnicastAddr(3),   -- Default for Xover and CPU ports
                    egressAllUnkDestAddr(4)   -- Default for all other ports
                }
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "Flood Mode for MX Ethernet port.  Allows flood mode for each Ethernet 
         port to be set to non-default values in the rare cases where that 
         might be useful."
    ::= { mnPrVlanPortConfEntry 24 }

mnPrVlanPortEthertype OBJECT-TYPE
    SYNTAX      INTEGER (0..65535) 
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        ""
    ::= { mnPrVlanPortConfEntry 25 }


-- -------------------------------------------------------------
-- The Current VLAN Database
-- -------------------------------------------------------------

mnPr1qVlanCurrentTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MnPr1qVlanCurrentEntry
    ACCESS      not-accessible
    STATUS      mandatory
    DESCRIPTION
        "A table containing current configuration information
        for each VLAN currently configured into the device by
        (local or network) management, or dynamically created
        as a result of GVRP requests received.
        Maps directly to dot1qVlanCurrentTable."
    ::= { mnPrVlanObjects 3 }

mnPr1qVlanCurrentEntry OBJECT-TYPE
    SYNTAX      MnPr1qVlanCurrentEntry
    ACCESS      not-accessible
    STATUS      mandatory
    DESCRIPTION
        "Information for a VLAN configured into the device by
        (local or network) management, or dynamically created
        as a result of GVRP requests received.
        Maps directly to dot1qVlanCurrentEntry, but is indexed
        on a (1..64) basis instead of VlanId"
    INDEX   { mnTribIndex, mnPr1qVlanIndex }
    ::= { mnPr1qVlanCurrentTable 1 }

MnPr1qVlanCurrentEntry ::=
    SEQUENCE {
        mnPr1qVlanIndex
            INTEGER,
        mnPr1qVlanId
            INTEGER,
        mnPr1qVlanFdbId
            INTEGER,
        mnPr1qVlanCurrentEgressPorts
            DisplayString,
        mnPr1qVlanCurrentUntaggedPorts
            DisplayString,
        mnPr1qVlanStatus
            INTEGER,
        mnPr1qVlanCreationTime
            TimeTicks
    }

mnPr1qVlanIndex OBJECT-TYPE
    SYNTAX      INTEGER (1..4094)
    ACCESS      not-accessible
    STATUS      mandatory
    DESCRIPTION
        "The identifier refering to this VLAN.
        Maps directly to dot1qVlanIndex, but is not
        equivalent to the VLAN-ID."
    ::= { mnPr1qVlanCurrentEntry 1 }

mnPr1qVlanId OBJECT-TYPE
    SYNTAX      INTEGER (1..4094)
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "The VLAN-ID associated with this VLAN."
    ::= { mnPr1qVlanCurrentEntry 2 }

mnPr1qVlanFdbId OBJECT-TYPE
    SYNTAX      INTEGER
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "The Filtering Database used by this VLAN.  This is one
        of the dot1qFdbId values in the dot1qFdbTable.  This
        value is allocated automatically by the device whenever
        the VLAN is created: either dynamically by GVRP, or by
        management, in dot1qVlanStaticTable.  Allocation of this
        value follows the learning constraints defined for this
        VLAN in dot1qLearningConstraintsTable.
        Since ther is only one filtering database on Proteus AMT,
        this value will always be 1.
        Maps directly to dot1qVlanFdbId."
    ::= { mnPr1qVlanCurrentEntry 3 }

mnPr1qVlanCurrentEgressPorts OBJECT-TYPE
    SYNTAX      DisplayString
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "The set of ports which are transmitting traffic for
        this VLAN as either tagged or untagged frames.
        Maps directly to dot1qVlanCurrentEgressPorts.
        String representation of a hexadecimal number, where the
        bits represent the following ports:
          0 (LSB): Eth1
          1:       Eth2
          2:       NMS1
          3:       NMS2
          4:       CPU (Xover in all other contexts)
          5:       Xover (CPU in all other contexts)
          6:       Link
        The swap of the CPU and Xover ports is a compromise for
        backwards compatibility.  The CPU port was added first, and
        at that time, room was not reserved for the Xover port where 
        it should be."    
    REFERENCE
        "IEEE 802.1Q/D11 Section 12.10.2.1"
    ::= { mnPr1qVlanCurrentEntry 4 }

mnPr1qVlanCurrentUntaggedPorts OBJECT-TYPE
    SYNTAX      DisplayString
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "The set of ports which are transmitting traffic for
        this VLAN as untagged frames.
        Maps directly to dot1qVlanCurrentUntaggedPorts."
    REFERENCE
        "IEEE 802.1Q/D11 Section 12.10.2.1"
    ::= { mnPr1qVlanCurrentEntry 5 }

mnPr1qVlanStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    permanent(2),
                    dynamicGvrp(3)
                }
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "This object indicates the status of this entry.
            other(1) - this entry is currently in use but the
                conditions under which it will remain so differ
                from the following values.
            permanent(2) - this entry, corresponding to an entry
                in dot1qVlanStaticTable, is currently in use and
                will remain so after the next reset of the
                device.  The port lists for this entry include
                ports from the equivalent dot1qVlanStaticTable
                entry and ports learnt dynamically.
            dynamicGvrp(3) - this entry is currently in use
                and will remain so until removed by GVRP.  There
                is no static entry for this VLAN and it will be
                removed when the last port leaves the VLAN.
         Maps directly to dot1qVlanStatus."
    ::= { mnPr1qVlanCurrentEntry 6 }

mnPr1qVlanCreationTime OBJECT-TYPE
    SYNTAX      TimeTicks
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "The value of sysUpTime when this VLAN was created.
        Maps directly to dot1qVlanCreationTime."
    ::= { mnPr1qVlanCurrentEntry 7 }

-- -------------------------------------------------------------
-- The Static VLAN Database
-- -------------------------------------------------------------

mnPr1qVlanStaticTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MnPr1qVlanStaticEntry
    ACCESS      not-accessible
    STATUS      mandatory
    DESCRIPTION
        "A table containing static configuration information for
        each VLAN configured into the device by (local or
        network) management.  All entries are permanent and will
        be restored after the device is reset.
        Maps directly to dot1qVlanStaticTable."
    ::= { mnPrVlanObjects 4 }

mnPr1qVlanStaticEntry OBJECT-TYPE
    SYNTAX      MnPr1qVlanStaticEntry
    ACCESS      not-accessible
    STATUS      mandatory
    DESCRIPTION
        "Static information for a VLAN configured into the
        device by (local or network) management.
        Maps directly to dot1qVlanStaticEntry"
    INDEX   { mnTribIndex, mnPr1qVlanIndex }
    ::= { mnPr1qVlanStaticTable 1 }

MnPr1qVlanStaticEntry ::=
    SEQUENCE {
        mnPr1qVlanStaticId
            INTEGER,
        mnPr1qVlanStaticName
            DisplayString,
        mnPr1qVlanStaticEgressPorts
            DisplayString,
        mnPr1qVlanForbiddenEgressPorts
            DisplayString,
        mnPr1qVlanStaticUntaggedPorts
            DisplayString,
        mnPr1qVlanStaticRowStatus
            RowStatus,
        mnPr1qVlanStaticFID    
            INTEGER,
        mnPr1qVlanStaticRingID    
            INTEGER
    }

mnPr1qVlanStaticId OBJECT-TYPE
    SYNTAX      INTEGER (1..4094)
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The VLAN-ID associated with this VLAN."
    ::= { mnPr1qVlanStaticEntry 1 }

mnPr1qVlanStaticName OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..16))
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "An administratively assigned string, which may be used
        to identify the VLAN.
        Maps directly to dot1qVlanStaticName."
    REFERENCE
        "IEEE 802.1Q/D11 Section 12.10.2.1"
    ::= { mnPr1qVlanStaticEntry 2 }

mnPr1qVlanStaticEgressPorts OBJECT-TYPE
    SYNTAX      DisplayString
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The set of ports which are permanently assigned to the
        egress list for this VLAN by management.  Changes to a
        bit in this object affect the per-port per-VLAN
        Registrar control for Registration Fixed for the
        relevant GVRP state machine on each port.  A port may
        not be added in this set if it is already a member of
        the set of ports in mnPr1qVlanForbiddenEgressPorts.  The
        default value of this object is a string of zeros of
        appropriate length, indicating not fixed.
        Maps directly to dot1qVlanStaticEgressPorts.
        
        FORMAT: This object is a ASCII string representation of
        a hexadecimal number.  The bits in this number 
        represent ports as follows:
          Std Port #   Port Name   Object Value
          ----------   ---------   -------
                 1      ETH1             1
                 2      ETH2             2
                 3      NMS1             4
                 4      NMS2             8
                 5      Xover           20  (note: not in order)
                 6      NMS to CPU      10  (note: not in order)
                 7      Link            40
                 8      ETH3            80
                 9      ETH4           100
                10      ETH5           200
                11      ETH6           400
                12      ETH7           800
                13      ETH8          1000
                14      ETH9          2000
                15      ETH10         4000
                16      GB1           8000
                17      GB2          10000
                18      SW1 Down     20000
                19      SW1 Up       40000
                20      SW2 Down     80000
                21      SW2 Up      100000
        Example: Ports Link and ETH3 would be represented as 'C0'.  
        "
    REFERENCE
        "IEEE 802.1Q/D11 Section 12.7.7.3, 11.2.3.2.3"

    ::= { mnPr1qVlanStaticEntry 3 }

mnPr1qVlanForbiddenEgressPorts OBJECT-TYPE
    SYNTAX      DisplayString
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The set of ports which are prohibited by management
        from being included in the egress list for this VLAN.
        Changes to this object that cause a port to be included
        or excluded affect the per-port per-VLAN Registrar
        control for Registration Forbidden for the relevant GVRP
        state machine on each port.  A port may not be added in
        this set if it is already a member of the set of ports
        in mnPrVlanStaticEgressPorts.  The default value of
        this object is a string of zeros of appropriate length,
        excluding all ports from the forbidden set.
        
        FORMAT: same as mnPr1qVlanStaticEgressPorts, above. 

        Maps directly to dot1qVlanForbiddenEgressPorts."
    REFERENCE
        "IEEE 802.1Q/D11 Section 12.7.7.3, 11.2.3.2.3"
    ::= { mnPr1qVlanStaticEntry 4 }

mnPr1qVlanStaticUntaggedPorts OBJECT-TYPE
    SYNTAX      DisplayString
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The set of ports which should transmit traffic for
        this VLAN as untagged frames.
        Maps directly to dot1qVlanStaticUntaggedPorts."
    REFERENCE
        "IEEE 802.1Q/D11 Section 12.10.2.1"
    ::= { mnPr1qVlanStaticEntry 5 }

mnPr1qVlanStaticRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "This object indicates the status of this entry.
        Maps directly to dot1qVlanStaticRowStatus."
    ::= { mnPr1qVlanStaticEntry 6 }

mnPr1qVlanStaticFID OBJECT-TYPE
    SYNTAX      INTEGER (0..4094)
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        ""
    ::= { mnPr1qVlanStaticEntry 7 }

mnPr1qVlanStaticRingID OBJECT-TYPE
    SYNTAX      INTEGER (0..10)
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        ""
    ::= { mnPr1qVlanStaticEntry 8 }




--------------------------------------------------------------------
-- Mapping of 802.1p Priorities to Traffic Class
--------------------------------------------------------------------

mnPrVlanDeviceTrafficClassTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MnPrVlanDeviceTrafficClassEntry
    ACCESS      not-accessible
    STATUS      mandatory
    DESCRIPTION
        "A table mapping evaluated User Priority (802.1p) to Traffic
        Class, for forwarding by the bridge.  Traffic class is a
        number in the range (0..(mnPrVLANPortNumTrafficClasses-1)).
        Maps directly to dot1dTrafficClassTable.
        Used by 'VLAN Priorities' for all Ethernet LIs."
    REFERENCE
        "ISO/IEC 15802-3 Table 7-2"
    ::= { mnPrVlanObjects 5 }

mnPrVlanDeviceTrafficClassEntry OBJECT-TYPE
    SYNTAX      MnPrVlanDeviceTrafficClassEntry
    ACCESS      not-accessible
    STATUS      mandatory
    DESCRIPTION
        "User Priority to Traffic Class mapping.
        Maps directly to dot1dTrafficClassEntry, only it is
        indexed on per-device basis rather than per-port."
    INDEX   { mnTribIndex, mnPrVlanDeviceTrafficClassIndex }
    ::= { mnPrVlanDeviceTrafficClassTable 1 }

MnPrVlanDeviceTrafficClassEntry ::=
    SEQUENCE {
        mnPrVlanDeviceTrafficClassIndex
            INTEGER,
        mnPrVlanDeviceTfcClsPriority
            INTEGER,
        mnPrVlanDeviceTrafficClass
            INTEGER
    }

mnPrVlanDeviceTrafficClassIndex OBJECT-TYPE
    SYNTAX      INTEGER (1..8)
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "The index into the traffic class mapping table."
    ::= { mnPrVlanDeviceTrafficClassEntry 1 }

mnPrVlanDeviceTfcClsPriority OBJECT-TYPE
    SYNTAX      INTEGER (0..7)
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "The Priority value determined for the received frame.
        This value is equivalent to the priority indicated in
        the tagged frame received, or one of the evaluated
        priorities, determined according to the media-type.

        For untagged frames received from Ethernet media, this
        value is equal to the dot1dPortDefaultUserPriority value
        for the ingress port.

        For untagged frames received from non-Ethernet media,
        this value is equal to the dot1dRegenUserPriority value
        for the ingress port and media-specific user priority.
        Maps directly to dot1dTrafficClassPriority."
    ::= { mnPrVlanDeviceTrafficClassEntry 2 }

mnPrVlanDeviceTrafficClass OBJECT-TYPE
    SYNTAX      INTEGER (0..3)
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The Traffic Class the received frame is mapped to.
        Maps directly to dot1dTrafficClass."
    ::= { mnPrVlanDeviceTrafficClassEntry 3 }

--------------------------------------------------------------------
-- Mapping of IPv4/TOS and IPv6/Traffic Class to Traffic Class
--------------------------------------------------------------------

mnPrVlanDeviceTosTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MnPrVlanDeviceTosEntry
    ACCESS      not-accessible
    STATUS      mandatory
    DESCRIPTION
        "A table mapping evaluated Type of Service (IPv4) or Traffic
        Class (IPv6) to Traffic Class, for forwarding by the bridge.
        Used by 'Diff Serve' for all Marvell Ethernet LIs."
    ::= { mnPrVlanObjects 6 }

mnPrVlanDeviceTosEntry OBJECT-TYPE
    SYNTAX      MnPrVlanDeviceTosEntry
    ACCESS      not-accessible
    STATUS      mandatory
    DESCRIPTION
        "TOS to Traffic Class mapping."
    INDEX   { mnTribIndex, mnPrVlanDeviceTosIndex }
    ::= { mnPrVlanDeviceTosTable 1 }

MnPrVlanDeviceTosEntry ::=
    SEQUENCE {
        mnPrVlanDeviceTosIndex
            INTEGER,
        mnPrVlanDeviceTosTrafficClass
            INTEGER,
        mnPrVlanDeviceTos
            INTEGER
    }

mnPrVlanDeviceTosIndex OBJECT-TYPE
    SYNTAX      INTEGER (1..4)
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "The index into the TOS transalation table."
    ::= { mnPrVlanDeviceTosEntry 1 }

mnPrVlanDeviceTosTrafficClass OBJECT-TYPE
    SYNTAX      INTEGER (0..3)
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "The Traffic Class the received framer are mapped to."
    ::= { mnPrVlanDeviceTosEntry 2 }

mnPrVlanDeviceTos OBJECT-TYPE
    SYNTAX      INTEGER (0..255)
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "The Priority value determined for the received frame,
        based upon bits (7:2) of the IP TOS/DiffServ/Traffic
        Class feild.  This values assumes that bits (1:0) are
        always zero.  Therefore, values of 0, 4, 8, 12, ...,
        248, and 252 are allowed.  Any recieved frame with a
        value equal to or below this value and above the value
        of the next lower traffic class will be mapped to this
        traffic class."
    ::= { mnPrVlanDeviceTosEntry 3 }


--------------------------------------------------------------------
-- Mapping of DSCP to Traffic Class (GigE only, in place of previous table)
--------------------------------------------------------------------

mnPrVlanDeviceDscpTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MnPrVlanDeviceDscpEntry
    ACCESS      not-accessible
    STATUS      mandatory
    DESCRIPTION
        "A table mapping DSCP to Traffic Class.
        Used by 'Diff Serve' for all Vitesse Ethernet LIs."
    ::= { mnPrVlanObjects 7 }

mnPrVlanDeviceDscpEntry OBJECT-TYPE
    SYNTAX      MnPrVlanDeviceDscpEntry
    ACCESS      not-accessible
    STATUS      mandatory
    DESCRIPTION
        "DSCP to Traffic Class mapping."
    INDEX   { mnTribIndex, mnPrVlanDeviceDscpIndex }
    ::= { mnPrVlanDeviceDscpTable 1 }

MnPrVlanDeviceDscpEntry ::=
    SEQUENCE {
        mnPrVlanDeviceDscpIndex
            INTEGER,
        mnPrVlanDeviceDscpValueToMap
            INTEGER,
        mnPrVlanDeviceDscpQosClass
            INTEGER
    }

mnPrVlanDeviceDscpIndex OBJECT-TYPE
    SYNTAX      INTEGER (1..8)
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "..."
    ::= { mnPrVlanDeviceDscpEntry 1 }

mnPrVlanDeviceDscpValueToMap OBJECT-TYPE
    SYNTAX      INTEGER (0..63)
    ACCESS      read-only
    STATUS      mandatory
    DESCRIPTION
        "..."
    ::= { mnPrVlanDeviceDscpEntry 2 }

mnPrVlanDeviceDscpQosClass OBJECT-TYPE
    SYNTAX      INTEGER (0..3)
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
        "..."
    ::= { mnPrVlanDeviceDscpEntry 3 }


-------------------------------------------------------------------------------
-- Management Protocol Configuration Table
-------------------------------------------------------------------------------

mnPrProtocolConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF MnPrProtocolConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A table containing management-protocol-specific configuration parameters 
              for the management agents in the radios of the link."
    ::= { mnPrSecurityObjects  3 }

mnPrProtocolConfEntry OBJECT-TYPE
    SYNTAX  MnPrProtocolConfEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
           "A set of configuration parameters for a single management protocol
              within one radio of the link."
    INDEX   { mnRadioIndex, mnPrProtocolIndex }
    ::= { mnPrProtocolConfTable  1 }

MnPrProtocolConfEntry ::=
    SEQUENCE {
        mnPrProtocolIndex
            INTEGER,

        mnPrProtocolConfAccess
            INTEGER
    }

mnPrProtocolIndex OBJECT-TYPE
    SYNTAX  INTEGER {
                serialCLI(1),
                telnetCLI(2),
                snmpV1(3),
                ssh(4),
                serialEM(5),
                snmpV2c(6),
                snmpV3(7),
                sce(8),
                ppp(9),
                snmpV3NANP(10),
                snmpV3ANP(11),
                snmpV3AP(12)
            }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
           "Management Protocol Configuration Index"
    ::= { mnPrProtocolConfEntry  1 }

mnPrProtocolConfAccess OBJECT-TYPE
    SYNTAX  INTEGER {
                noAccess(1),
                readOnlyAccess(3),
                readWriteAccess(7)
            }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
           "This object provides a means to configure the maximum level of access 
             that the radio's agent will give to clients using a particular
             management protocol."
    ::= { mnPrProtocolConfEntry  2 }

END