                ADTRAN-GENMAX-ACCESSORY-MIB   DEFINITIONS ::= BEGIN

     -- TITLE:       Generic Accessory MIB
     -- PRODUCT:     All chassis type products
     -- VERSION:     1.0
     -- DATE:        03/11/04
     -- AUTHOR:      G. Fernandez
     -- SNMP:        SNMPv1
     -- MIB ARC:     adtran.adShared.adGenericShelves.adGenAccessory

     -- HISTORY:
        -- 11/19/2003 pnb Reassign adShared branch
      -- 11/20/2003 glf Swapped the indexes in the sequence table on the AdGenAccessoryEntry

     IMPORTS
         NOTIFICATION-TYPE, OBJECT-TYPE, Integer32,
        MODULE-IDENTITY, OBJECT-IDENTITY,
        TimeTicks
            FROM SNMPv2-SMI
          DisplayString, PhysAddress
                 FROM SNMPv2-TC
          sysName
                FROM SNMPv2-MIB
          AdPresence,
          AdProductIdentifier
               FROM ADTRAN-TC
          adTrapInformSeqNum
                  FROM ADTRAN-GENTRAPINFORM-MIB
          adShared
               FROM ADTRAN-MIB;

   adGenAccessory MODULE-IDENTITY
         LAST-UPDATED "201002241300Z"
         ORGANIZATION "Adtran, Inc."
         CONTACT-INFO
           "CND Tech Support
               Postal: ADTRAN, Inc.
                       901 Explorer Blvd.
                       Huntsville, AL  35806
                       Tel: +1 800 726-8663
                       Fax: +1 256 963 6217
                       E-mail: support@adtran.com"
         DESCRIPTION
            "This MIB defines the objects for the adGenAccessory MIB."
         REVISION "201002241300Z"
         DESCRIPTION "Converted from SNMPv1 adGenAccessory.mib file."
      ::= { adShared 54 }

   -- Accessory Group

     -- adGenAccessory         OBJECT IDENTIFIER ::= { adShared 54 }

     adGenAccessoryCount OBJECT-TYPE
         SYNTAX  Integer32 (1..255)
         MAX-ACCESS  read-only
         STATUS  current
         DESCRIPTION
               "The number of accesories (regardless of
               their current state) present on this system."
         ::= { adGenAccessory 1 }

    adGenAccessoryStartIndex    OBJECT-TYPE
         SYNTAX  Integer32 (1..255)
         MAX-ACCESS  read-only
         STATUS  current
         DESCRIPTION
               "The starting index for the adGenAccessoryIndex."
         ::= { adGenAccessory 2 }

    adGenAccessoryModuleCount OBJECT-TYPE
         SYNTAX  Integer32 (1..255)
         MAX-ACCESS  read-only
         STATUS  current
         DESCRIPTION
               "The number of accesories moudules supported.  This is
                the maximum count of adGenAccessoryModuleIndex."
         ::= { adGenAccessory 3 }

   --   Rows exist for all physical slots as defined by adGenAccessoryCount.
   --   The first three objects (columns) in each row are always visible,
   --   but the remaining columnar objects are non-existant for empty slots,
   --   and will return no such name on gets or will be skipped on getnexts.

   adGenAccessoryTable OBJECT-TYPE
       SYNTAX  SEQUENCE OF AdGenAccessoryEntry
       MAX-ACCESS  not-accessible
       STATUS  current
       DESCRIPTION
               "Table of accessories available."
       ::= { adGenAccessory 6 }

   adGenAccessoryEntry OBJECT-TYPE
       SYNTAX  AdGenAccessoryEntry
       MAX-ACCESS  not-accessible
       STATUS  current
       DESCRIPTION
               ""
       INDEX   { adGenAccessoryIndex, adGenAccessoryModuleIndex }
       ::= { adGenAccessoryTable 1 }

   AdGenAccessoryEntry ::=
       SEQUENCE {
           adGenAccessoryIndex
               Integer32,
           adGenAccessoryModuleIndex
               Integer32,
           adGenAccessoryState
               AdPresence,
           adGenAccessoryProduct
               AdProductIdentifier,
           adGenAccessoryTrapEnable
               INTEGER,
           adGenAccessoryAlarmStatus
               OCTET STRING,
           adGenAccessoryFaceplate
               OCTET STRING,
           adGenAccessoryStatServiceState
               INTEGER,
           adGenAccessoryPortNumber
               Integer32,
           adGenAccessoryProvVersion
               Integer32,
           adGenAccessoryTFileName
               DisplayString,
           adGenAccessoryUpdateSoftware
               INTEGER,
           adGenAccessoryUpdateStatus
               DisplayString,
           adGenAccessoryUpTime
               TimeTicks
       }



   adGenAccessoryIndex OBJECT-TYPE
       SYNTAX  Integer32 (1..255)
       MAX-ACCESS  read-only
       STATUS  current
       DESCRIPTION
               "A unique value for each accessory.
               This object is visible for all rows."
       ::= { adGenAccessoryEntry 1 }

   adGenAccessoryModuleIndex OBJECT-TYPE
       SYNTAX  Integer32 (1..255)
       MAX-ACCESS  read-only
       STATUS  current
       DESCRIPTION
               "A unique value for each accessory module.
               This object is visible for all rows."
       ::= { adGenAccessoryEntry 2 }

   adGenAccessoryState OBJECT-TYPE
       SYNTAX  AdPresence
       MAX-ACCESS  read-only
       STATUS  current
       DESCRIPTION
               "The state of the card slot. Initially it is empty.
               When a card is inserted, it becomes occupied, and the
               Slot Type is determined by the card Product Code.
               When a card is removed, it changes to virtual,
               and retains the SlotType characteristics until a
               different kind of card is inserted, or a different
               preconfiguration is established.
               This object is visible for all rows."
       ::= { adGenAccessoryEntry 3 }

   adGenAccessoryProduct OBJECT-TYPE
       SYNTAX  AdProductIdentifier
       MAX-ACCESS  read-only
       STATUS  current
       DESCRIPTION
               "The ADTRAN Product code. Agent will report
               real product code when installed or pre-provisioned.
               This object is visible for all rows. It is defined in the ADTRAN-TC."
       ::= { adGenAccessoryEntry 4 }

   adGenAccessoryTrapEnable OBJECT-TYPE
        SYNTAX     INTEGER {
            enableTraps(1),
            disableTraps(2)
        }
        MAX-ACCESS      read-write
   STATUS  	current
        DESCRIPTION
            "Enables/Disables traps initiated from this slot. Note that
             cards out of service will not generate traps."
        ::= { adGenAccessoryEntry 5 }

    adGenAccessoryAlarmStatus OBJECT-TYPE
        SYNTAX      OCTET STRING
        MAX-ACCESS      read-only
        STATUS      current
        DESCRIPTION
            "A bit encoded string representing the alarm state of
             the slot. The LSB should be 1 for No Alarm, else 0 and
             the higher order bits will indicate which alarms are
             present. The specific alarm conditions may be found in
             more specific generic MIBs or in the device MIB.
             This may report the same status as xxxLineStatus in
             internet standard line MIBs."
        ::= { adGenAccessoryEntry 6 }

    adGenAccessoryFaceplate OBJECT-TYPE
        SYNTAX      OCTET STRING
        MAX-ACCESS      read-only
        STATUS      current
        DESCRIPTION
            "A bit encoded string representing the status of faceplate
            indicators, LEDs, buttons & switches for GUI visualization.
            The first byte will be the number of LED/switches encoded.
            The following bytes will contain 2 bit sequences in network order
            for each LED or switch, from the top to the bottom of the faceplate.
            The final byte may be padded with zeros.
            The meaning of each pair of bits for LEDs is:
              00 - off
              01 - color A on only
              10 - color B on only (not used for mono-colors)
              11 - both A & B on (not used for mono-colors)
            The meaning of each pair of bits for switches or buttons is:
              00 - not pressed if button
              01 - up or right switch position, or pressed if button
              10 - down or left switch position
              11 - middle switch position
            The definition of colors and/or on/off switch values will be
            defined in the product specific MIB.
            This may be cached at the chassis level."
        ::= { adGenAccessoryEntry 7 }

    adGenAccessoryStatServiceState OBJECT-TYPE
        SYNTAX  INTEGER {
                is(1),          -- In Service
                oosUas(2),      -- Out of Service, Unassigned
                oosMA(3),       -- Out of Service, Maintenance mode
                fault(5),       -- autonomous fault
                isStbyHot(8),   -- In Service, standby hot (prot only)
                isActLock(9),   -- In Service, active locked (prot only)
                isStbyLock(10)  -- In Service, standby locked (prot only)
                }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Module service state. Port service states are commanded via
             ifAdminStatus and reported via ifOperStatus in the IF-MIB.
             Those states of up, down, & testing correspond to the first
             three states defined here for the card."
        ::= { adGenAccessoryEntry 8 }

     adGenAccessoryPortNumber OBJECT-TYPE
         SYNTAX  Integer32
         MAX-ACCESS  read-only
         STATUS  current
         DESCRIPTION
                 "The number of physical ports (regardless of
                 their current state) present in this slot."
         ::= { adGenAccessoryEntry 9 }

    adGenAccessoryProvVersion OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS      read-only
        STATUS      current
        DESCRIPTION
            "A counter starting at 0 which is incremented by the agent
             after each provisioning change so that an EMS can detect that
             a change has been made locally that needs further investigation
             to achieve synchronization."
        ::= { adGenAccessoryEntry 10 }


    adGenAccessoryTFileName OBJECT-TYPE
        SYNTAX      DisplayString
        MAX-ACCESS      read-write
        STATUS      current
        DESCRIPTION
            "Filename for tftp software update. A minimum of length of 25
            characters must be supported. Server is defined in genchass.mib"
        ::= { adGenAccessoryEntry 13 }

    adGenAccessoryUpdateSoftware OBJECT-TYPE
        SYNTAX      INTEGER {
                    initiate(1)
                    }
        MAX-ACCESS      read-write
        STATUS      current
        DESCRIPTION
            "A set command will initiate tftp download.
             Get has no meaning and will always return 1."
        ::= { adGenAccessoryEntry 15 }

    adGenAccessoryUpdateStatus OBJECT-TYPE
        SYNTAX      DisplayString
        MAX-ACCESS      read-only
        STATUS      current
        DESCRIPTION
            "A progress indication during download which can be polled."
        ::= { adGenAccessoryEntry 16 }

    adGenAccessoryUpTime OBJECT-TYPE
        SYNTAX      TimeTicks
        MAX-ACCESS      read-only
        STATUS      current
        DESCRIPTION
            "The time (in hundredths of a second) since the
             card was powered up. This is comparable to the
             mib-2.system.sysUpTime timer object for the IP
             addressable agent, but is unique for each card."
        ::= { adGenAccessoryEntry 17 }



    --
    -- Product Information group
    --
    --  This group contains information common for most all Adtran
    --  products.
    --
    --

   adGenAccessoryProdTable OBJECT-TYPE
       SYNTAX  SEQUENCE OF AdGenAccessoryProdEntry
       MAX-ACCESS  not-accessible
       STATUS  current
       DESCRIPTION
               "Table of slots available for boards."
       ::= { adGenAccessory 7 }

   adGenAccessoryProdEntry OBJECT-TYPE
       SYNTAX  AdGenAccessoryProdEntry
       MAX-ACCESS  not-accessible
       STATUS  current
       DESCRIPTION
               ""
       INDEX   { adGenAccessoryIndex, adGenAccessoryModuleIndex }
       ::= { adGenAccessoryProdTable 1 }

   AdGenAccessoryProdEntry ::=
       SEQUENCE {
           adGenAccessoryProdName
               DisplayString,
           adGenAccessoryProdPartNumber
               DisplayString,
           adGenAccessoryProdCLEIcode
               DisplayString,
           adGenAccessoryProdSerialNumber
               DisplayString,
           adGenAccessoryProdRevision
               DisplayString,
           adGenAccessoryProdSwVersion
               DisplayString,
           adGenAccessoryProdPhysAddress
               PhysAddress,
           adGenAccessoryProdProductID
               OBJECT IDENTIFIER,
           adGenAccessoryProdTransType
               DisplayString
       }


    adGenAccessoryProdName  OBJECT-TYPE
        SYNTAX  DisplayString
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The Adtran Product Name"
        ::= { adGenAccessoryProdEntry 2 }

    adGenAccessoryProdPartNumber  OBJECT-TYPE
        SYNTAX  DisplayString
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The Adtran Product Part Number"
        ::= { adGenAccessoryProdEntry 3 }

    adGenAccessoryProdCLEIcode  OBJECT-TYPE
        SYNTAX  DisplayString
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The Adtran Product CLEI Code"
        ::= { adGenAccessoryProdEntry 4 }

    adGenAccessoryProdSerialNumber  OBJECT-TYPE
        SYNTAX  DisplayString
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The Adtran Product Serial Number"
        ::= { adGenAccessoryProdEntry 5 }

    adGenAccessoryProdRevision  OBJECT-TYPE
        SYNTAX  DisplayString
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The Adtran Product Revision Number"
        ::= { adGenAccessoryProdEntry 6 }

    adGenAccessoryProdSwVersion  OBJECT-TYPE
        SYNTAX  DisplayString
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The Adtran Product Software Version Number"
        ::= { adGenAccessoryProdEntry 7 }

    adGenAccessoryProdPhysAddress   OBJECT-TYPE
        SYNTAX  PhysAddress
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This octet string variable is the same as the ifPhysAddress
             in IF-MIB. THe SCU will report MAC address, else 0 for other cards."
        ::= { adGenAccessoryProdEntry 8 }

    adGenAccessoryProdProductID  OBJECT-TYPE
        SYNTAX  OBJECT IDENTIFIER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The Adtran Product ID equivalent to sysObjectID"
        ::= { adGenAccessoryProdEntry 9 }

    adGenAccessoryProdTransType OBJECT-TYPE
        SYNTAX  DisplayString
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The data transmission circuit/facility/payload level of the
             device (see Appendix A of GR-833-CORE).  Common examples are:
             T0, T1, T2, T3, STS1, and OC3. For the SCU and other common
             equipment cards, the code should be EQPT."
        ::= { adGenAccessoryProdEntry 10 }


      -- ********************************************************************************************************
       adGenAccessoryConfigTable OBJECT-TYPE
         SYNTAX  SEQUENCE OF AdGenAccessoryConfigEntry
         MAX-ACCESS  not-accessible
         STATUS  current
         DESCRIPTION
               "Table of accessory slots available for accessory option."
         ::= { adGenAccessory 9}

      adGenAccessoryConfigEntry OBJECT-TYPE
         SYNTAX  AdGenAccessoryConfigEntry
         MAX-ACCESS  not-accessible
         STATUS  current
         DESCRIPTION
               ""
         INDEX   { adGenAccessoryIndex, adGenAccessoryModuleIndex  }
         ::= { adGenAccessoryConfigTable 1 }

      AdGenAccessoryConfigEntry ::=
         SEQUENCE {
            adGenAccessoryStateConfig
               AdPresence
         }

      adGenAccessoryStateConfig OBJECT-TYPE
         SYNTAX  AdPresence
         MAX-ACCESS  read-write
         STATUS  current
         DESCRIPTION
               "Allows forcing slot with adGenAccessoryState of virtual state to empty.
                adGenAccessoryStateConfig will only accept a value Empty(1)."
         ::= { adGenAccessoryConfigEntry 1 }

      -- ********************************************************************************************************

-- Generic Accessory Traps

      adGenAccessoryNotificationEvents OBJECT-IDENTITY
                STATUS current
                DESCRIPTION "The SCM controller events"
                ::= { adGenAccessory 0 }

      adTAAccessoryModuleInserted   NOTIFICATION-TYPE
                OBJECTS {
                        adTrapInformSeqNum,
                        sysName,
                        adGenAccessoryIndex,
                        adGenAccessoryModuleIndex
                        }
                STATUS  current
                DESCRIPTION
                        "An accessory port module has been inserted"

        --#TYPE      "Informational - An accessory port module has been inserted"
        --#SUMMARY   "GENMAX-ACCESSORY 1005402: accessory port module has been inserted;"
        --#SUMMARY   "detected at chassis: %s, accessory port: %d module: %d"
        --#ARGUMENTS { 1, 2 ,3}
        --#SEVERITY  INFORMATIONAL
        --#GENERIC   6
        --#CATEGORY  "Configuration Events"
        --#SOURCE_ID "A"
        --#TIMEINDEX 0
        ::= { adGenAccessoryNotificationEvents 1005402 }


        adTAAccessoryModuleRemoved   NOTIFICATION-TYPE
                OBJECTS {
                        adTrapInformSeqNum,
                        sysName,
                        adGenAccessoryIndex,
                        adGenAccessoryModuleIndex
                        }
                STATUS  current
                DESCRIPTION
                        "An accessory port module has been removed"
        --#TYPE      "Warning - An accessory port module has been removed"
        --#SUMMARY   "GENMAX-ACCESSORY 1005403: accessory port module has been removed;"
        --#SUMMARY   "detected at chassis: %s, accessory port: %d module: %d"
        --#ARGUMENTS { 1, 2, 3 }
        --#SEVERITY  WARNING
        --#GENERIC   6
        --#CATEGORY  "Configuration Events"
        --#SOURCE_ID "A"
        --#TIMEINDEX 0
        ::= { adGenAccessoryNotificationEvents 1005403 }

    END


