--
-- #pragma ident	"%Z%%M% %I% %D%"
--
-- Fabric Element Management MIB, Version 1.10 (same as version 1.9), as
-- per Internet Draft,
--  "Definitions of Managed Objects for the Fabric Element in Fibre Channel
--   Standard", <draft-teow-fabric-element-mib-03.txt>, July 10, 1998.
--
-- This is edited for Brocade implementation.
-- (1) The following variables have been changed from read-write to read-only:
--     fcFabricName, fcElementName, fcFeModuleName (Config group),
--     fcFxPortAdminMode, fcFxPortPhysRttov, fcFxPortBbCreditModel
--     (Operational Group).
-- (2) The following deprecated objects are not supported:
--     FPortFlogiTable { fcFeOp 2 }
-- (3) The following textual conventions have been changed slightly:
--     MilliSecond and MicroSecond such that the maximum value is
--     2147383647 (2^31 - 1) instead of 4294967295 (2^32 - 1) due to the
--     the restriction of the MIB compiler (mibcomp).
--     Brocade plans to propose these minor changes to the next version
--     of the Internet Draft.
--
-- This MIB module is equivalent to femib.smiv2 but it's in SMIv1.
--

        FCFABRIC-ELEMENT-MIB DEFINITIONS ::= BEGIN

        IMPORTS
           OBJECT-TYPE,
           experimental, Counter, Gauge, TimeTicks
              FROM RFC1155-SMI;

        fibreChannel OBJECT IDENTIFIER ::= { experimental 42 }

--        fcFabric MODULE-IDENTITY
--           LAST-UPDATED "9702070000Z"
--           ORGANIZATION "ANSI X3T11 Fibre Channel Working Group"
--           CONTACT-INFO "     Kha Sin Teow
--                              Brocade Communications Systems,
--                              1901 Guadalupe Parkway,
--                              San Jose, CA 95131
--                              U.S.A
--                         Tel: +1 408 487 8180
--                         Fax: +1 408 487 8190
--                       Email: khasin@BrocadeComm.COM"
--           DESCRIPTION "The MIB module for Fibre Channel Fabric Element."
--           REVISION "9710010000Z"
--           DESCRIPTION "Version 1.9"
--           ::= { fibreChannel 2 }


	fcFabric OBJECT IDENTIFIER ::= { fibreChannel 2 }

        -- Fabric Element
           fcFe OBJECT IDENTIFIER ::= { fcFabric 1 }

        -- Groups under fcFe
           fcFeConfig       OBJECT IDENTIFIER ::= { fcFe 1 }
           fcFeOp           OBJECT IDENTIFIER ::= { fcFe 2 }
           fcFeError        OBJECT IDENTIFIER ::= { fcFe 3 }
           fcFeAcct         OBJECT IDENTIFIER ::= { fcFe 4 }
           fcFeCap          OBJECT IDENTIFIER ::= { fcFe 5 }

        -- Type definitions.

	DisplayString ::= OCTET STRING (SIZE (0..255))
        MilliSeconds ::= INTEGER (0..2147383647)  -- 2^31 - 1
        MicroSeconds ::= INTEGER (0..2147383647)

        FcNameId ::= OCTET STRING (SIZE (8))
                -- Worldwide Name or Fibre Channel Name associated with
                -- an FC entity.  It's a Network_Destination_ID or
                -- Network_Source_ID composed of a value up to 60 bits
                -- wide, occupying the remaining 8 bytes while the first
                -- nibble identifies the format of the Name_Identifier with
                -- hex values:
                -- 0: ignored
                -- 1: IEEE 48-bit address,
                -- 2: IEEE extended,
                -- 3: Locally assigned,
                -- 4: 32-bit IP address

        FabricName ::= FcNameId
                -- The Name Identifier of a Fabric.  Each Fabric shall
                -- provide a unique Fabric Name.
                -- Only the following formats are allowed: IEEE48, and Local.

        FcPortName ::= FcNameId
                -- The Name Identifier associated with a port
                -- Only the following formats are allowed:
                --   IEEE48, IEEE extended, and Local.

        FcAddressId ::= OCTET STRING (SIZE (3))
                -- Fibre Channel Address Identifier.  A 24-bit value unique
                -- within the address space of a Fabric

        FcRxDataFieldSize ::= INTEGER (128..2112)
                -- Receive Data_Field Size

        FcBbCredit ::= INTEGER (0..32767)
                -- Buffer-to-buffer Credit

        -- FC-PH version
        FcphVersion ::= INTEGER (0..255)

        -- Class 1 Stacked Connect Support/Mode
        FcStackedConnMode ::= INTEGER {
                none            (1),
                transparent     (2),
                lockedDown      (3)
        }

        -- Class of Service Capability Set
        FcCosCap ::= INTEGER (0..127)
                -- bit 0        Class F
                -- bit 1        Class 1
                -- bit 2        Class 2
                -- bit 3        Class 3
                -- bit 4        Class 4
                -- bit 5        Class 5
                -- bit 6        Class 6
                -- bit 7        reserved for future

        -- FC-0 Baud Rates
        Fc0BaudRate ::= INTEGER {
                other           (1),    -- none of below
                oneEighth       (2),    -- 155 Mbaud (12.5MB/s)
                quarter         (4),    -- 266 Mbaud (25.0MB/s)
                half            (8),    -- 532 Mbaud (50.0MB/s)
                full            (16),   --   1 Gbaud (100MB/s)
                double          (32),   --   2 Gbaud (200MB/s)
                quadruple       (64)    --   4 Gbaud (400MB/s)
        }

        -- Baud Rate Capability Set
        Fc0BaudRateCap ::= INTEGER (0..127)
                -- bit 0        other
                -- bit 1        oneEighth
                -- bit 2        quarter
                -- bit 3        half
                -- bit 4        full
                -- bit 5        double
                -- bit 6        quadruple
                -- bit 7        reserved for future

        -- FC-0 Media Capability Set
        Fc0MediaCap ::= INTEGER (0..65535)
                -- bit 0        unknown
                -- bit 1        single mode fibre (sm)
                -- bit 2        multi-mode fibre 50 micron (m5)
                -- bit 3        multi-mode fibre 62.5 micron (m6)
                -- bit 4        video cable (tv)
                -- bit 5        miniature cable (mi)
                -- bit 6        shielded twisted pair (stp)
                -- bit 7        twisted wire (tw)
                -- bit 8        long video (lv)
                -- bits 9-15    reserved for future use

        -- A specific FC-0 medium type associated with a port
        Fc0Medium ::= INTEGER {
                unknown (1),
                sm      (2),
                m5      (4),
                m6      (8),
                tv      (16),
                mi      (32),
                stp     (64),
                tw      (128),
                lv      (256)
        }

        -- The FC-0 transmitter type of a port
        Fc0TxType ::= INTEGER {
                        unknown         (1),
                        longWaveLaser   (2),            -- (LL)
                        shortWaveLaser  (3),            -- (SL)
                        longWaveLED     (4),            -- (LE)
                        electrical      (5),            -- (EL)
                        shortWaveLaser-noOFC (6)        -- (SN)
        }

        -- The FC-0 distance range associated with a port transmitter
        Fc0Distance ::= INTEGER {
                        unknown         (1),
                        long            (2),
                        intermediate    (3),
                        short           (4)
        }

        -- Module and Port Capacity
        FcFeModuleCapacity ::= INTEGER (1..256)
        FcFeFxPortCapacity ::= INTEGER (1..256)

        -- Module, FxPort and NxPort Index
        FcFeModuleIndex ::= INTEGER (1..256)
        FcFeFxPortIndex ::= INTEGER (1..256)
        FcFeNxPortIndex ::= INTEGER (1..126)

        -- Port Mode
        FcFxPortMode    ::= INTEGER {
                                unknown (1),
                                fPort   (2),
                                flPort  (3)
        }

        -- BB_Credit Model
        FcBbCreditModel ::= INTEGER {
                                regular   (1),
                                alternate (2)
        }

        -- The Configuration group

        -- This group consists of scalar objects and tables.
        -- It contains the configuration and service parameters
        -- of the Fabric Element and the FxPorts.
        -- The group represents a set of parameters associated with
        -- the Fabric Element  or an FxPort to support its NxPorts.
        -- Implementation of this group is mandatory.

        fcFabricName OBJECT-TYPE
            SYNTAX      FabricName
            ACCESS      read-only	-- instead of read-write
            STATUS      mandatory
            DESCRIPTION
               "The Name_Identifier of the Fabric to which this Fabric
                Element belongs."
            ::= { fcFeConfig 1 }

        fcElementName OBJECT-TYPE
            SYNTAX      FcNameId
            ACCESS      read-only	-- instead of read-write
            STATUS      mandatory
            DESCRIPTION
               "The Name_Identifier of the Fabric Element."
            ::= { fcFeConfig 2 }

        fcFeModuleCapacity OBJECT-TYPE
            SYNTAX      FcFeModuleCapacity
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The maximum number of modules in the Fabric Element,
                regardless of their current state."
            ::= { fcFeConfig 3 }

        -- The Module Table.
        -- This table contains one entry for each module,
        -- information of the modules.

        fcFeModuleTable OBJECT-TYPE
            SYNTAX      SEQUENCE OF FcFeModuleEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "A table that contains, one entry for each module in the
                Fabric Element, information of the modules."
            ::= { fcFeConfig 4 }

        fcFeModuleEntry OBJECT-TYPE
            SYNTAX      FcFeModuleEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "An entry containing the configuration parameters of a
                module."
            INDEX { fcFeModuleIndex }
            ::= { fcFeModuleTable 1 }


        FcFeModuleEntry ::=
            SEQUENCE {
                fcFeModuleIndex
                    FcFeModuleIndex,
                fcFeModuleDescr
                    DisplayString,
                fcFeModuleObjectID
                    OBJECT IDENTIFIER,
                fcFeModuleOperStatus
                    INTEGER,
                fcFeModuleLastChange
                    TimeTicks,
                fcFeModuleFxPortCapacity
                    FcFeFxPortCapacity,
                fcFeModuleName
                    FcNameId
            }

        fcFeModuleIndex OBJECT-TYPE
            SYNTAX      FcFeModuleIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the module within the Fabric
                Element for which this entry contains information. This
                value is never greater than fcFeModuleCapacity."
            ::= { fcFeModuleEntry 1 }

        fcFeModuleDescr OBJECT-TYPE
            SYNTAX      DisplayString
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A textual description of the module. This value should
                include the full name and version identification of the
                module. It should contain printable ASCII characters."
            ::= { fcFeModuleEntry 2 }

        fcFeModuleObjectID OBJECT-TYPE
            SYNTAX      OBJECT IDENTIFIER
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The vendor's authoritative identification of the module.
                This value may be allocated within the SMI enterprises
                subtree (1.3.6.1.4.1) and provides a straight-forward
                and unambiguous means for determining what kind of
                module is being managed.
                For example, this object could take the value
                1.3.6.1.4.1.99649.3.9 if vendor 'Neufe Inc.' was
                assigned the subtree 1.3.6.1.4.1.99649, and had assigned
                the identifier 1.3.6.1.4.1.99649.3.9 to its 'FeFiFo-16
                PlugInCard.'"
            ::= { fcFeModuleEntry 3 }

        fcFeModuleOperStatus    OBJECT-TYPE
            SYNTAX      INTEGER {
                            online  (1), -- functional
                            offline (2), -- not available
                            testing (3), -- under testing
                            faulty  (4)  -- defective
                        }
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object indicates the operational status of the
                module:
                online(1)   the module is functioning properly;
                offline(2)  the module is not available;
                testing(3)  the module is under testing; and
                faulty(4)   the module is defective in some way."
            ::= { fcFeModuleEntry 4 }

        fcFeModuleLastChange OBJECT-TYPE
            SYNTAX      TimeTicks
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object contains the value of sysUpTime when the
                module entered its current operational status. A value
                of zero indicates that the operational status of the
                module has not changed since the agent last restarted."
            ::= { fcFeModuleEntry 5 }

        fcFeModuleFxPortCapacity OBJECT-TYPE
            SYNTAX      FcFeFxPortCapacity
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of FxPort that can be contained within the
                module. Within each module, the ports are uniquely
                numbered in the range from 1 to fcFeModuleFxPortCapacity
                inclusive. However, the numbers are not required to be
                contiguous."
            ::= { fcFeModuleEntry 6 }

        fcFeModuleName OBJECT-TYPE
            SYNTAX      FcNameId
            ACCESS      read-only	-- instead of read-write
            STATUS      mandatory
            DESCRIPTION
               "The Name_Identifier of the module."
            ::= { fcFeModuleEntry 7 }

        -- the FxPort Configuration Table.
        -- This table contains, one entry for each FxPort,
        -- configuration parameters of the ports.

        fcFxConfTable OBJECT-TYPE
            SYNTAX      SEQUENCE OF FcFxConfEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "A table that contains, one entry for each FxPort in the
                Fabric Element, configuration and service parameters of
                the FxPorts."
            ::= { fcFeConfig 5 }

        fcFxConfEntry OBJECT-TYPE
            SYNTAX      FcFxConfEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "An entry containing the configuration and service
                parameters of a FxPort."
            INDEX { fcFxConfModuleIndex, fcFxConfFxPortIndex }
            ::= { fcFxConfTable 1 }


        FcFxConfEntry ::=
            SEQUENCE {
                fcFxConfModuleIndex
                    FcFeModuleIndex,
                fcFxConfFxPortIndex
                    FcFeFxPortIndex,
                fcFxPortName
                    FcPortName,
                -- FxPort common service parameters
                fcFxPortFcphVersionHigh
                    FcphVersion,
                fcFxPortFcphVersionLow
                    FcphVersion,
                fcFxPortBbCredit
                    FcBbCredit,
                fcFxPortRxBufSize
                    FcRxDataFieldSize,
                fcFxPortRatov
                    MilliSeconds,
                fcFxPortEdtov
                    MilliSeconds,
                -- FxPort class service parameters
                fcFxPortCosSupported
                    FcCosCap,
                fcFxPortIntermixSupported
                    INTEGER,
                fcFxPortStackedConnMode
                    FcStackedConnMode,
                fcFxPortClass2SeqDeliv
                    INTEGER,
                fcFxPortClass3SeqDeliv
                    INTEGER,
                -- other configuration parameters
                fcFxPortHoldTime
                    MicroSeconds,
                fcFxPortBaudRate
                    Fc0BaudRate,
                fcFxPortMedium
                    Fc0Medium,
                fcFxPortTxType
                    Fc0TxType,
                fcFxPortDistance
                    Fc0Distance
            }

        fcFxConfModuleIndex OBJECT-TYPE
            SYNTAX      FcFeModuleIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the module containing the FxPort
                for which this entry contains information."
            ::= { fcFxConfEntry 1 }

        fcFxConfFxPortIndex OBJECT-TYPE
            SYNTAX      FcFeFxPortIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the FxPort within the module.
                This number ranges from 1 to the value of
                fcFeModulePortCapacity for the associated module. The
                value remains constant for the identified FxPort until
                the module is re-initialized."
            ::= { fcFxConfEntry 2 }

        fcFxPortName OBJECT-TYPE
            SYNTAX      FcPortName
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The name identifier of this FxPort.  Each FxPort has a
                unique port name within the address space of the
                Fabric."
            ::= { fcFxConfEntry 3 }


            -- FxPort common service parameters

        fcFxPortFcphVersionHigh OBJECT-TYPE
            SYNTAX      FcphVersion
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The highest or most recent version of FC-PH that the
                FxPort is configured to support."
            ::= { fcFxConfEntry 4 }

        fcFxPortFcphVersionLow OBJECT-TYPE
            SYNTAX      FcphVersion
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The lowest or earliest version of FC-PH that the FxPort
                is configured to support."
            ::= { fcFxConfEntry 5 }

        fcFxPortBbCredit OBJECT-TYPE
            SYNTAX      FcBbCredit
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The total number of receive buffers available for
                holding Class 1 connect-request, Class 2 or 3 frames
                from the attached NxPort.  It is for buffer-to-buffer
                flow control in the direction from the attached NxPort
                (if applicable) to FxPort."
            ::= { fcFxConfEntry 6 }

        fcFxPortRxBufSize OBJECT-TYPE
            SYNTAX      FcRxDataFieldSize
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The largest Data_Field Size (in octets) for an FT_1
                frame that can be received by the FxPort."
            ::= { fcFxConfEntry 7 }

        fcFxPortRatov OBJECT-TYPE
            SYNTAX      MilliSeconds
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The Resource_Allocation_Timeout Value configured for the
                FxPort.  This is used as the timeout value for
                determining when to reuse an NxPort resource such as a
                Recovery_Qualifier.  It represents E_D_TOV (see next
                object) plus twice the maximum time that a frame may be
                delayed within the Fabric and still be delivered."
            ::= { fcFxConfEntry 8 }

        fcFxPortEdtov OBJECT-TYPE
            SYNTAX      MilliSeconds
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The E_D_TOV value configured for the FxPort. The
                Error_Detect_Timeout Value is used as the timeout value
                for detecting an error condition."
            ::= { fcFxConfEntry 9 }


        -- FxPort class service parameters
        fcFxPortCosSupported OBJECT-TYPE
            SYNTAX      FcCosCap
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A value indicating the set of Classes of Service
                supported by the FxPort."
            ::= { fcFxConfEntry 10 }

        fcFxPortIntermixSupported OBJECT-TYPE
            SYNTAX      INTEGER {
				yes (1),
				no  (2)
			}
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A flag indicating whether or not the FxPort supports an
                Intermixed Dedicated Connection."
            ::= { fcFxConfEntry 11 }

        fcFxPortStackedConnMode OBJECT-TYPE
            SYNTAX      FcStackedConnMode
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A value indicating the mode of Stacked Connect supported
                by the FxPort."
            ::= { fcFxConfEntry 12 }

        fcFxPortClass2SeqDeliv OBJECT-TYPE
            SYNTAX      INTEGER {
				yes (1),
				no  (2)
			}
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A flag indicating whether or not Class 2 Sequential
                Delivery is supported by the FxPort."
            ::= { fcFxConfEntry 13 }

        fcFxPortClass3SeqDeliv OBJECT-TYPE
            SYNTAX      INTEGER {
				yes (1),
				no  (2)
			}
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A flag indicating whether or not Class 3 Sequential
                Delivery is supported by the FxPort."
            ::= { fcFxConfEntry 14 }


        -- other FxPort parameters

        fcFxPortHoldTime OBJECT-TYPE
            SYNTAX      MicroSeconds
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The maximum time (in microseconds) that the FxPort shall
                hold a frame before discarding the frame if it is unable
                to deliver the frame. The value 0 means that the FxPort
                does not support this parameter."
            ::= { fcFxConfEntry 15 }

        fcFxPortBaudRate OBJECT-TYPE
            SYNTAX      Fc0BaudRate
            ACCESS      read-only
            STATUS      deprecated
            DESCRIPTION
               "The FC-0 baud rate of the FxPort."
            ::= { fcFxConfEntry 16 }

        fcFxPortMedium OBJECT-TYPE
            SYNTAX      Fc0Medium
            ACCESS      read-only
            STATUS      deprecated
            DESCRIPTION
               "The FC-0 medium of the FxPort."
            ::= { fcFxConfEntry 17 }

        fcFxPortTxType OBJECT-TYPE
            SYNTAX      Fc0TxType
            ACCESS      read-only
            STATUS      deprecated
            DESCRIPTION
               "The FC-0 transmitter type of the FxPort."
            ::= { fcFxConfEntry 18 }

        fcFxPortDistance OBJECT-TYPE
            SYNTAX      Fc0Distance
            ACCESS      read-only
            STATUS      deprecated
            DESCRIPTION
               "The FC-0 distance range of the FxPort transmitter."
            ::= { fcFxConfEntry 19 }

        -- the Operation group

        -- This group consists of tables that contains operational
        -- status and established service parameters for the Fabric
        -- Element and the attached NxPorts.
        -- Implementation of this group is mandatory.

        -- The FxPort Operation table
        -- This table contains, one entry for each FxPort,
        -- the operational status and parameters of the FxPorts.

        fcFxPortOperTable OBJECT-TYPE
            SYNTAX      SEQUENCE OF FcFxPortOperEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "A table that contains, one entry for each FxPort in the
                Fabric Element, operational status and parameters of the
                FxPorts."
            ::= { fcFeOp 1 }

        fcFxPortOperEntry OBJECT-TYPE
            SYNTAX      FcFxPortOperEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "An entry containing operational status and parameters of
                a FxPort."
            INDEX { fcFxPortOperModuleIndex, fcFxPortOperFxPortIndex }
            ::= { fcFxPortOperTable 1 }


        FcFxPortOperEntry ::=
            SEQUENCE {
                fcFxPortOperModuleIndex
                    FcFeModuleIndex,
                fcFxPortOperFxPortIndex
                    FcFeFxPortIndex,
                fcFxPortID
                    FcAddressId,
                fcFPortAttachedPortName
                    FcPortName,
                fcFPortConnectedPort
                    FcAddressId,
                fcFxPortBbCreditAvailable
                    Gauge,
                fcFxPortOperMode
                    FcFxPortMode,
                fcFxPortAdminMode
                    FcFxPortMode
            }

        fcFxPortOperModuleIndex OBJECT-TYPE
            SYNTAX      FcFeModuleIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the module containing the FxPort
                for which this entry contains information."
            ::= { fcFxPortOperEntry 1 }

        fcFxPortOperFxPortIndex OBJECT-TYPE
            SYNTAX      FcFeFxPortIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the FxPort within the module.
                This number ranges from 1 to the value of
                fcFeModulePortCapacity for the associated module. The
                value remains constant for the identified FxPort until
                the module is re-initialized."
            ::= { fcFxPortOperEntry 2 }

        fcFxPortID   OBJECT-TYPE
            SYNTAX      FcAddressId
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The address identifier by which this FxPort is
                identified within the Fabric.  The FxPort may assign its
                address identifier to its attached NxPort(s) during
                Fabric Login."
            ::= { fcFxPortOperEntry 3 }

        fcFPortAttachedPortName OBJECT-TYPE
            SYNTAX      FcPortName
            ACCESS      read-only
            STATUS      deprecated
            DESCRIPTION
               "The port name of the attached N_Port, if applicable. If
                the value of this object is '0000000000000000'H, this
                FxPort has no NxPort attached to it. This variable has
                been deprecated and may be implemented for backward
                compability."
            ::= { fcFxPortOperEntry 4 }

        fcFPortConnectedPort OBJECT-TYPE
            SYNTAX      FcAddressId
            ACCESS      read-only
            STATUS      deprecated
            DESCRIPTION
               "The address identifier of the destination FxPort with
                which this FxPort is currently engaged in a either a
                Class 1 or loop connection. If the value of this object
                is '000000'H, this FxPort is not engaged in a
                connection. This variable has been deprecated and may be
                implemented for backward compability."
            ::= { fcFxPortOperEntry 5 }

        fcFxPortBbCreditAvailable OBJECT-TYPE
            SYNTAX      Gauge
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of buffers currently available for receiving
                frames from the attached port in the buffer-to-buffer
                flow control. The value should be less than or equal to
                fcFxPortBbCredit."
            ::= { fcFxPortOperEntry 6 }

        fcFxPortOperMode OBJECT-TYPE
            SYNTAX      FcFxPortMode
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The current operational mode of the FxPort."
            ::= { fcFxPortOperEntry 7 }

        fcFxPortAdminMode OBJECT-TYPE
            SYNTAX      FcFxPortMode
            ACCESS      read-only		-- instead of read-write
            STATUS      mandatory
            DESCRIPTION
               "The desired operational mode of the FxPort."
            ::= { fcFxPortOperEntry 8 }

	-- ****************************************************************
        -- The F_Port Fabric Login table
        --
        -- This table contains, one entry for each F_Port in the
        -- Fabric Element, the Service Parameters that have been
        -- established from the most recent Fabric Login
        -- (implicit or explicit).

	-- NOTE WELL:
	--  This table is deprecated since FEMIB v1.9.
	--  It is not supported in Silkworm agent after firmware v1.5.
	--  Instead, the new table, FxPort Fabric Login Table
        --  (to follow after FxPort Physical Level Table), is supported.
	-- ****************************************************************


        -- the FxPort Physical Level table
        -- This table contains, one entry for each FxPort in the
        -- Fabric Element, the physical level status and parameters
        -- of the FxPorts.

        fcFxPortPhysTable OBJECT-TYPE
            SYNTAX      SEQUENCE OF FcFxPortPhysEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "A table that contains, one entry for each FxPort in the
                Fabric Element, physical level status and parameters of
                the FxPorts."
            ::= { fcFeOp 3 }

        fcFxPortPhysEntry OBJECT-TYPE
            SYNTAX      FcFxPortPhysEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "An entry containing physical level status and parameters
                of a FxPort."
            INDEX { fcFxPortPhysModuleIndex, fcFxPortPhysFxPortIndex }
            ::= { fcFxPortPhysTable 1 }

        FcFxPortPhysEntry ::=
            SEQUENCE {
                fcFxPortPhysModuleIndex
                    FcFeModuleIndex,
                fcFxPortPhysFxPortIndex
                    FcFeFxPortIndex,
                fcFxPortPhysAdminStatus
                    INTEGER,
                fcFxPortPhysOperStatus
                    INTEGER,
                fcFxPortPhysLastChange
                    TimeTicks,
                fcFxPortPhysRttov
                    MilliSeconds
            }

        fcFxPortPhysModuleIndex OBJECT-TYPE
            SYNTAX      FcFeModuleIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the module containing the FxPort
                for which this entry contains information."
            ::= { fcFxPortPhysEntry 1 }

        fcFxPortPhysFxPortIndex OBJECT-TYPE
            SYNTAX      FcFeFxPortIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the FxPort within the module.
                This number ranges from 1 to the value of
                fcFeModulePortCapacity for the associated module. The
                value remains constant for the identified FxPort until
                the module is re-initialized."
            ::= { fcFxPortPhysEntry 2 }

        fcFxPortPhysAdminStatus OBJECT-TYPE
            SYNTAX      INTEGER {
                            online  (1),  -- place port online
                            offline (2),  -- take port offline
                            testing (3)   -- initiate test procedures
                        }
            ACCESS      read-write
            STATUS      mandatory
            DESCRIPTION
               "The desired state of the FxPort.  A management station
                may place the FxPort in a desired state by setting this
                object accordingly.  The testing(3) state indicates that
                no operational frames can be passed.  When a Fabric
                Element initializes, all FxPorts start with
                fcFxPortPhysAdminStatus in the offline(2) state.  As the
                result of either explicit management action or per
                configuration information accessible by the Fabric
                Element, fcFxPortPhysAdminStatus is then changed to
                either the online(1) or testing(3) states, or remains in
                the offline state."
                ::= { fcFxPortPhysEntry 3 }

            fcFxPortPhysOperStatus   OBJECT-TYPE
                SYNTAX      INTEGER {
                    online       (1), -- Login may proceed
                    offline      (2), -- Login cannot proceed
                    testing      (3), -- port is under test
                    link-failure (4)  -- failure after online/testing
                    -- Other values may be used to indicate
                    -- diagnostic for failed test.
                }
                ACCESS      read-only
                STATUS      mandatory
                DESCRIPTION
                   "The current operational status of the FxPort.  The
                    testing(3) indicates that no operational frames can
                    be passed.  If fcFxPortPhysAdminStatus is offline(2)
                    then fcFxPortPhysOperStatus should be offline(2). If
                    fcFxPortPhysAdminStatus is changed to online(1) then
                    fcFxPortPhysOperStatus should change to online(1) if
                    the FxPort is ready to accept Fabric Login request
                    from the attached NxPort; it should proceed and
                    remain in the link-failure(4) state if and only if
                    there is a fault that prevents it from going to the
                    online(1) state."
                ::= { fcFxPortPhysEntry 4 }

            fcFxPortPhysLastChange OBJECT-TYPE
                SYNTAX      TimeTicks
                ACCESS      read-only
                STATUS      mandatory
                DESCRIPTION
                   "The value of sysUpTime at the time the FxPort
                    entered its current operational status. A value of
                    zero indicates that the FxPort's operational status
                    has not changed since the agent last restarted."
                ::= { fcFxPortPhysEntry 5 }

            fcFxPortPhysRttov OBJECT-TYPE
                SYNTAX      MilliSeconds
                ACCESS      read-only		-- instead of read-write
                STATUS      mandatory
                DESCRIPTION
                   "The Receiver_Transmitter_Timeout value of the
                    FxPort. This is used by the receiver logic to detect
                    Loss of Synchronization."
                ::= { fcFxPortPhysEntry 6 }


        -- The FxPort Fabric Login table
        --
        -- This table contains, one entry for each FxPort in the
        -- Fabric Element, the Service Parameters that have been
        -- established from the most recent Fabric Login,
        -- implicit or explicit.

        fcFxlogiTable OBJECT-TYPE
            SYNTAX      SEQUENCE OF FcFxlogiEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "A table that contains, one entry for each FxPort in the
                Fabric Element, services parameters established from the
                most recent Fabric Login, explicit or implicit."
            ::= { fcFeOp 4 }


        fcFxlogiEntry OBJECT-TYPE
            SYNTAX      FcFxlogiEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "An entry containing service parameters established from
                a successful Fabric Login."
            INDEX { fcFxlogiModuleIndex, fcFxlogiFxPortIndex,
            fcFxlogiNxPortIndex }
            ::= { fcFxlogiTable 1 }

        FcFxlogiEntry ::=
            SEQUENCE {
                fcFxlogiModuleIndex
                    FcFeModuleIndex,
                fcFxlogiFxPortIndex
                    FcFeFxPortIndex,
                fcFxlogiNxPortIndex
                    FcFeNxPortIndex,
                fcFxPortFcphVersionAgreed
                    FcphVersion,
                fcFxPortNxPortBbCredit
                    FcBbCredit,
                fcFxPortNxPortRxDataFieldSize
                    FcRxDataFieldSize,
                fcFxPortCosSuppAgreed
                    FcCosCap,
                fcFxPortIntermixSuppAgreed
                    INTEGER,
                fcFxPortStackedConnModeAgreed
                    FcStackedConnMode,
                fcFxPortClass2SeqDelivAgreed
                    INTEGER,
                fcFxPortClass3SeqDelivAgreed
                    INTEGER,
                --
                fcFxPortNxPortName
                    FcPortName,
                fcFxPortConnectedNxPort
                    FcAddressId,
                fcFxPortBbCreditModel
                    FcBbCreditModel
            }

        fcFxlogiModuleIndex OBJECT-TYPE
            SYNTAX      FcFeModuleIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the module containing the FxPort
                for which this entry contains information."
            ::= { fcFxlogiEntry 1 }

        fcFxlogiFxPortIndex OBJECT-TYPE
            SYNTAX      FcFeFxPortIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the FxPort within the module.
                This number ranges from 1 to the value of
                fcFeModulePortCapacity for the associated module. The
                value remains constant for the identified FxPort until
                the module is re-initialized."
            ::= { fcFxlogiEntry 2 }

        fcFxlogiNxPortIndex OBJECT-TYPE
            SYNTAX      FcFeNxPortIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The object identifies the associated NxPort in the
                attachment for which the entry contains information."
            ::= { fcFxlogiEntry 3 }

        fcFxPortFcphVersionAgreed OBJECT-TYPE
            SYNTAX      FcphVersion
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The version of FC-PH that the FxPort has agreed to
                support from the Fabric Login"
            ::= { fcFxlogiEntry 4 }

        fcFxPortNxPortBbCredit OBJECT-TYPE
            SYNTAX      FcBbCredit
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The total number of buffers available for holding Class
                1 connect-request, Class 2 or Class 3 frames to be
                transmitted to the attached NxPort.  It is for buffer-
                to-buffer flow control in the direction from FxPort to
                NxPort. The buffer-to-buffer flow control mechanism is
                indicated in the respective fcFxPortBbCreditModel.
                [1](23.6.2.2)"
            ::= { fcFxlogiEntry 5 }

        fcFxPortNxPortRxDataFieldSize OBJECT-TYPE
            SYNTAX      FcRxDataFieldSize
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The Receive Data Field Size of the attached NxPort. This
                is a binary value that specifies the largest Data Field
                Size for an FT_1 frame that can be received by the
                NxPort. The value is in number of bytes and ranges from
                128 to 2112 inclusive."
            ::= { fcFxlogiEntry 6 }

        fcFxPortCosSuppAgreed OBJECT-TYPE
            SYNTAX      FcCosCap
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A variable indicating that the attached NxPort has
                requested the FxPort for the support of classes of
                services and the FxPort has granted the request."
            ::= { fcFxlogiEntry 7 }

        fcFxPortIntermixSuppAgreed OBJECT-TYPE
            SYNTAX      INTEGER {
				yes (1),
				no  (2)
			}
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A variable indicating that the attached NxPort has
                requested the FxPort for the support of Intermix and the
                FxPort has granted the request. This flag is only valid
                if Class 1 service is supported."
            ::= { fcFxlogiEntry 8 }

        fcFxPortStackedConnModeAgreed OBJECT-TYPE
            SYNTAX      FcStackedConnMode
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A variable indicating whether the FxPort has agreed to
                support stacked connect from the Fabric Login. This is
                only meaningful if Class 1 service has been agreed."
            ::= { fcFxlogiEntry 9 }

        fcFxPortClass2SeqDelivAgreed OBJECT-TYPE
            SYNTAX      INTEGER {
				yes (1),
				no  (2)
			}
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A variable indicating whether the FxPort has agreed to
                support Class 2 sequential delivery from the Fabric
                Login. This is only meaningful if Class 2 service has
                been agreed."
            ::= { fcFxlogiEntry 10 }

        fcFxPortClass3SeqDelivAgreed OBJECT-TYPE
            SYNTAX      INTEGER {
				yes (1),
				no  (2)
			}
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A flag indicating whether the FxPort has agreed to
                support Class 3 sequential delivery from the Fabric
                Login. This is only meaningful if Class 3 service has
                been agreed."
            ::= { fcFxlogiEntry 11 }

        fcFxPortNxPortName OBJECT-TYPE
            SYNTAX      FcPortName
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The port name of the attached NxPort, if applicable. If
                the value of this object is '0000000000000000'H, this
                FxPort has no NxPort attached to it."
            ::= { fcFxlogiEntry 12 }

        fcFxPortConnectedNxPort OBJECT-TYPE
            SYNTAX      FcAddressId
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The address identifier of the destination FxPort with
                which this FxPort is currently engaged in a either a
                Class 1 or loop connection. If the value of this object
                is '000000'H, this FxPort is not engaged in a
                connection."
            ::= { fcFxlogiEntry 13 }

        fcFxPortBbCreditModel OBJECT-TYPE
            SYNTAX      FcBbCreditModel
            ACCESS      read-only		-- instead of read-write
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the BB_Credit model used by the
                FxPort. The regular model refers to the Buffer-to-Buffer
                flow control mechanism defined in FC-PH [1] is used
                between the F_Port and the N_Port. For FL_Ports, the
                Alternate Buffer-to-Buffer flow control mechanism as
                defined in FC-AL [4] is used between the FL_Port and any
                attached NL_Ports."
            ::= { fcFxlogiEntry 14 }


        -- the Error group
        -- This group consists of tables that contain information about
        -- the various types of errors detected.  The management station
        -- may use the information in this group to determine the
        -- quality of the link between the FxPort and its attached NxPort.
        -- Implementation of this group is optional.

        -- the FxPort Error table
        -- This table contains, one entry for each FxPort in the Fabric
        -- Element, counters recording numbers of errors detected
        -- since the management agent re-initialized.
        -- The first 6 columnar objects after the port index corresponds
        -- to the counters in the Link Error Status Block ([1](29.8)).

        fcFxPortErrorTable OBJECT-TYPE
            SYNTAX      SEQUENCE OF FcFxPortErrorEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "A table that contains, one entry for each FxPort,
                counters that record the numbers of errors detected."
            ::= { fcFeError 1 }

        fcFxPortErrorEntry OBJECT-TYPE
            SYNTAX      FcFxPortErrorEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "An entry containing error counters of a FxPort."
            INDEX { fcFxPortErrorModuleIndex, fcFxPortErrorFxPortIndex }
            ::= { fcFxPortErrorTable 1 }

        FcFxPortErrorEntry ::=
            SEQUENCE {
                fcFxPortErrorModuleIndex
                    FcFeModuleIndex,
                fcFxPortErrorFxPortIndex
                    FcFeFxPortIndex,
                fcFxPortLinkFailures
                    Counter,
                fcFxPortSyncLosses
                    Counter,
                fcFxPortSigLosses
                    Counter,
                fcFxPortPrimSeqProtoErrors
                    Counter,
                fcFxPortInvalidTxWords
                    Counter,
                fcFxPortInvalidCrcs
                    Counter,
                fcFxPortDelimiterErrors
                    Counter,
                fcFxPortAddressIdErrors
                    Counter,
                fcFxPortLinkResetIns
                    Counter,
                fcFxPortLinkResetOuts
                    Counter,
                fcFxPortOlsIns
                    Counter,
                fcFxPortOlsOuts
                    Counter
            }

        fcFxPortErrorModuleIndex OBJECT-TYPE
            SYNTAX      FcFeModuleIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the module containing the FxPort
                for which this entry contains information."
            ::= { fcFxPortErrorEntry 1 }

        fcFxPortErrorFxPortIndex OBJECT-TYPE
            SYNTAX      FcFeFxPortIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the FxPort within the module.
                This number ranges from 1 to the value of
                fcFeModulePortCapacity for the associated module. The
                value remains constant for the identified FxPort until
                the module is re-initialized."
            ::= { fcFxPortErrorEntry 2 }

        fcFxPortLinkFailures OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of link failures detected by this FxPort."
            ::= { fcFxPortErrorEntry 3 }

        fcFxPortSyncLosses OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of loss of synchronization detected by the
                FxPort."
            ::= { fcFxPortErrorEntry 4 }

        fcFxPortSigLosses OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of loss of signal detected by the FxPort."
            ::= { fcFxPortErrorEntry 5 }

        fcFxPortPrimSeqProtoErrors OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of primitive sequence protocol errors
                detected by the FxPort."
            ::= { fcFxPortErrorEntry 6 }

        fcFxPortInvalidTxWords OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of invalid transmission word detected by the
                FxPort."
            ::= { fcFxPortErrorEntry 7 }

        fcFxPortInvalidCrcs OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of invalid CRC detected by this FxPort."
            ::= { fcFxPortErrorEntry 8 }

        fcFxPortDelimiterErrors OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Delimiter Errors detected by this FxPort."
            ::= { fcFxPortErrorEntry 9 }

        fcFxPortAddressIdErrors OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of address identifier errors detected by this
                FxPort."
            ::= { fcFxPortErrorEntry 10 }

        fcFxPortLinkResetIns OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Link Reset Protocol received by this
                FxPort from the attached NxPort."
            ::= { fcFxPortErrorEntry 11 }

        fcFxPortLinkResetOuts OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Link Reset Protocol issued by this FxPort
                to the attached NxPort."
            ::= { fcFxPortErrorEntry 12 }

        fcFxPortOlsIns OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Offline Sequence received by this FxPort."
            ::= { fcFxPortErrorEntry 13 }

        fcFxPortOlsOuts OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Offline Sequence issued by this FxPort."
            ::= { fcFxPortErrorEntry 14 }



        -- Accounting Groups:
        -- (1) Class 1 Accounting Group,
        -- (2) Class 2 Accounting Group, and
        -- (3) Class 3 Accounting Group.
        -- Each group consists of a table that contains accounting
        -- information for the FxPorts in the Fabric Element.
        -- Implementation of each group is optional.

        -- the Class 1 Accounting table
        -- This table contains, one entry for each FxPort in the Fabric
        -- Element, Counters for certain types of events occurred in the
        -- the FxPorts since the the management agent has re-initialized.
        -- Implementation of this group is optional.

        fcFxPortC1AcctTable OBJECT-TYPE
            SYNTAX      SEQUENCE OF FcFxPortC1AcctEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "A table that contains, one entry for each FxPort in the
                Fabric Element, Class 1 accounting information recorded
                since the management agent has re-initialized."
            ::= { fcFeAcct 1 }

        fcFxPortC1AcctEntry OBJECT-TYPE
            SYNTAX      FcFxPortC1AcctEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "An entry containing Class 1 accounting information for
                each FxPort."
            INDEX { fcFxPortC1AcctModuleIndex, fcFxPortC1AcctFxPortIndex
            }
            ::= { fcFxPortC1AcctTable 1 }


        FcFxPortC1AcctEntry ::=
            SEQUENCE {
                fcFxPortC1AcctModuleIndex
                    FcFeModuleIndex,
                fcFxPortC1AcctFxPortIndex
                    FcFeFxPortIndex,
                fcFxPortC1InConnections
                    Counter,
                fcFxPortC1OutConnections
                    Counter,
                fcFxPortC1FbsyFrames
                    Counter,
                fcFxPortC1FrjtFrames
                    Counter,
                fcFxPortC1ConnTime
                    Counter,
                fcFxPortC1InFrames
                    Counter,
                fcFxPortC1OutFrames
                    Counter,
                fcFxPortC1InOctets
                    Counter,
                fcFxPortC1OutOctets
                    Counter,
                fcFxPortC1Discards
                    Counter
            }

        fcFxPortC1AcctModuleIndex OBJECT-TYPE
            SYNTAX      FcFeModuleIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the module containing the FxPort
                for which this entry contains information."
            ::= { fcFxPortC1AcctEntry 1 }

        fcFxPortC1AcctFxPortIndex OBJECT-TYPE
            SYNTAX      FcFeFxPortIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the FxPort within the module.
                This number ranges from 1 to the value of
                fcFeModulePortCapacity for the associated module. The
                value remains constant for the identified FxPort until
                the module is re-initialized."
            ::= { fcFxPortC1AcctEntry 2 }

        fcFxPortC1InConnections OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 1 connections successfully
                established in which the attached NxPort is the source
                of the connect-request."
            ::= { fcFxPortC1AcctEntry 3 }

        fcFxPortC1OutConnections OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 1 connections successfully
                established in which the attached NxPort is the
                destination of the connect-request."
            ::= { fcFxPortC1AcctEntry 4 }

        fcFxPortC1FbsyFrames OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of F_BSY frames generated by this FxPort
                against Class 1 connect-request."
            ::= { fcFxPortC1AcctEntry 5 }

        fcFxPortC1FrjtFrames OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of F_RJT frames generated by this FxPort
                against Class 1 connect-request."
            ::= { fcFxPortC1AcctEntry 6 }

        fcFxPortC1ConnTime OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The cumulative time that this FxPort has been engaged in
                Class 1 connection.  The amount of time of each
                connection is counted in octets from after a connect-
                request has been accepted until the connection is
                disengaged, either by an EOFdt or Link Reset."
            ::= { fcFxPortC1AcctEntry 7 }

        fcFxPortC1InFrames OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 1 frames (other than Class 1
                connect-request) received by this FxPort from its
                attached NxPort."
            ::= { fcFxPortC1AcctEntry 8 }

        fcFxPortC1OutFrames OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 1 frames (other than Class 1
                connect-request) delivered through this FxPort to its
                attached NxPort."
            ::= { fcFxPortC1AcctEntry 9 }

        fcFxPortC1InOctets OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 1 frame octets, including the frame
                delimiters,  received by this FxPort from its attached
                NxPort."
            ::= { fcFxPortC1AcctEntry 10 }

        fcFxPortC1OutOctets OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 1 frame octets, including the frame
                delimiters, delivered through this FxPort its attached
                NxPort."
            ::= { fcFxPortC1AcctEntry 11 }

        fcFxPortC1Discards OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 1 frames discarded by this FxPort."
            ::= { fcFxPortC1AcctEntry 12 }


        -- the Class 2 Accounting table
        -- This table contains, one entry for each FxPort in the Fabric
        -- Element, Counters for certain types of events occurred in the
        -- the FxPorts since the the management agent has re-initialized.
        -- Implementation of this group is optional.

        fcFxPortC2AcctTable OBJECT-TYPE
            SYNTAX      SEQUENCE OF FcFxPortC2AcctEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "A table that contains, one entry for each FxPort in the
                Fabric Element, Class 2 accounting information recorded
                since the management agent has re-initialized."
            ::= { fcFeAcct 2 }

        fcFxPortC2AcctEntry OBJECT-TYPE
            SYNTAX      FcFxPortC2AcctEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "An entry containing Class 2 accounting information for
                each FxPort."
            INDEX { fcFxPortC2AcctModuleIndex, fcFxPortC2AcctFxPortIndex
            }
            ::= { fcFxPortC2AcctTable 1 }

        FcFxPortC2AcctEntry ::=
            SEQUENCE {
                fcFxPortC2AcctModuleIndex
                    FcFeModuleIndex,
                fcFxPortC2AcctFxPortIndex
                    FcFeFxPortIndex,
                fcFxPortC2InFrames
                    Counter,
                fcFxPortC2OutFrames
                    Counter,
                fcFxPortC2InOctets
                    Counter,
                fcFxPortC2OutOctets
                    Counter,
                fcFxPortC2Discards
                    Counter,
                fcFxPortC2FbsyFrames
                    Counter,
                fcFxPortC2FrjtFrames
                    Counter
            }

        fcFxPortC2AcctModuleIndex OBJECT-TYPE
            SYNTAX      FcFeModuleIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the module containing the FxPort
                for which this entry contains information."
            ::= { fcFxPortC2AcctEntry 1 }

        fcFxPortC2AcctFxPortIndex OBJECT-TYPE
            SYNTAX      FcFeFxPortIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the FxPort within the module.
                This number ranges from 1 to the value of
                fcFeModulePortCapacity for the associated module. The
                value remains constant for the identified FxPort until
                the module is re-initialized."
            ::= { fcFxPortC2AcctEntry 2 }

        fcFxPortC2InFrames OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 2 frames received by this FxPort
                from its attached NxPort."
            ::= { fcFxPortC2AcctEntry 3 }

        fcFxPortC2OutFrames OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 2 frames delivered through this
                FxPort to its attached NxPort."
            ::= { fcFxPortC2AcctEntry 4 }

        fcFxPortC2InOctets OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 2 frame octets, including the frame
                delimiters, received by this FxPort from its attached
                NxPort."
            ::= { fcFxPortC2AcctEntry 5 }

        fcFxPortC2OutOctets OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 2 frame octets, including the frame
                delimiters, delivered through this FxPort to its
                attached NxPort."
            ::= { fcFxPortC2AcctEntry 6 }

        fcFxPortC2Discards OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 2 frames discarded by this FxPort."
            ::= { fcFxPortC2AcctEntry 7 }

        fcFxPortC2FbsyFrames OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of F_BSY frames generated by this FxPort
                against Class 2 frames."
            ::= { fcFxPortC2AcctEntry 8 }

        fcFxPortC2FrjtFrames OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of F_RJT frames generated by this FxPort
                against Class 2 frames."
            ::= { fcFxPortC2AcctEntry 9 }

        -- the Class 3 Accounting Group
        -- This table contains, one entry for each FxPort in the Fabric
        -- Element, Counters for certain types of events occurred in the
        -- the FxPorts since the management agent has re-initialized.
        -- Implementation of this group is optional.

        fcFxPortC3AcctTable OBJECT-TYPE
            SYNTAX      SEQUENCE OF FcFxPortC3AcctEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "A table that contains, one entry for each FxPort in the
                Fabric Element, Class 3 accounting information recorded
                since the management agent has re-initialized."
            ::= { fcFeAcct 3 }

        fcFxPortC3AcctEntry OBJECT-TYPE
            SYNTAX      FcFxPortC3AcctEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "An entry containing Class 3 accounting information for
                each FxPort."
            INDEX { fcFxPortC3AcctModuleIndex, fcFxPortC3AcctFxPortIndex
            }
            ::= { fcFxPortC3AcctTable 1 }


        FcFxPortC3AcctEntry ::=
            SEQUENCE {
                fcFxPortC3AcctModuleIndex
                    FcFeModuleIndex,
                fcFxPortC3AcctFxPortIndex
                    FcFeFxPortIndex,
                fcFxPortC3InFrames
                    Counter,
                fcFxPortC3OutFrames
                    Counter,
                fcFxPortC3InOctets
                    Counter,
                fcFxPortC3OutOctets
                    Counter,
                fcFxPortC3Discards
                    Counter
            }

        fcFxPortC3AcctModuleIndex OBJECT-TYPE
            SYNTAX      FcFeModuleIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the module containing the FxPort
                for which this entry contains information."
            ::= { fcFxPortC3AcctEntry 1 }

        fcFxPortC3AcctFxPortIndex OBJECT-TYPE
            SYNTAX      FcFeFxPortIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the FxPort within the module.
                This number ranges from 1 to the value of
                fcFeModulePortCapacity for the associated module. The
                value remains constant for the identified FxPort until
                the module is re-initialized."
            ::= { fcFxPortC3AcctEntry 2 }

        fcFxPortC3InFrames OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 3 frames received by this FxPort
                from its attached NxPort."
            ::= { fcFxPortC3AcctEntry 3 }

        fcFxPortC3OutFrames OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 3 frames delivered through this
                FxPort to its attached NxPort."
            ::= { fcFxPortC3AcctEntry 4 }

        fcFxPortC3InOctets OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 3 frame octets, including the frame
                delimiters, received by this FxPort from its attached
                NxPort."
            ::= { fcFxPortC3AcctEntry 5 }

        fcFxPortC3OutOctets OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 3 frame octets, including the frame
                delimiters, delivered through this FxPort to its
                attached NxPort."
            ::= { fcFxPortC3AcctEntry 6 }

        fcFxPortC3Discards OBJECT-TYPE
            SYNTAX      Counter
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The number of Class 3 frames discarded by this FxPort."
            ::= { fcFxPortC3AcctEntry 7 }


        -- The Capability Group - consists of a table describing
        -- information about what each FxPort is inherently capable
        -- of operating or supporting.
        -- A capability may be used, as expressed in its respective
        -- object value in the Configuration group.
        -- Implementation of this group is optional.

        fcFxPortCapTable OBJECT-TYPE
            SYNTAX      SEQUENCE OF FcFxPortCapEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "A table that contains, one entry for each FxPort, the
                capabilities of the port within the Fabric Element."
            ::= { fcFeCap 1 }

        fcFxPortCapEntry OBJECT-TYPE
            SYNTAX      FcFxPortCapEntry
            ACCESS      not-accessible
            STATUS      mandatory
            DESCRIPTION
               "An entry containing the capabilities of a FxPort."
            INDEX { fcFxPortCapModuleIndex, fcFxPortCapFxPortIndex }
            ::= { fcFxPortCapTable 1 }


        FcFxPortCapEntry ::=
            SEQUENCE {
                fcFxPortCapModuleIndex
                    FcFeModuleIndex,
                fcFxPortCapFxPortIndex
                    FcFeFxPortIndex,
                fcFxPortCapFcphVersionHigh
                    FcphVersion,
                fcFxPortCapFcphVersionLow
                    FcphVersion,
                fcFxPortCapBbCreditMax
                    FcBbCredit,
                fcFxPortCapBbCreditMin
                    FcBbCredit,
                fcFxPortCapRxDataFieldSizeMax
                    FcRxDataFieldSize,
                fcFxPortCapRxDataFieldSizeMin
                    FcRxDataFieldSize,
                fcFxPortCapCos
                    FcCosCap,
                fcFxPortCapIntermix
                    INTEGER,
                fcFxPortCapStackedConnMode
                    FcStackedConnMode,
                fcFxPortCapClass2SeqDeliv
                    INTEGER,
                fcFxPortCapClass3SeqDeliv
                    INTEGER,
                fcFxPortCapHoldTimeMax
                    MicroSeconds,
                fcFxPortCapHoldTimeMin
                    MicroSeconds,
                fcFxPortCapBaudRates
                    Fc0BaudRateCap,
                fcFxPortCapMedia
                    Fc0MediaCap
            }

        fcFxPortCapModuleIndex OBJECT-TYPE
            SYNTAX      FcFeModuleIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the module containing the FxPort
                for which this entry contains information."
            ::= { fcFxPortCapEntry 1 }

        fcFxPortCapFxPortIndex OBJECT-TYPE
            SYNTAX      FcFeFxPortIndex
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "This object identifies the FxPort within the module.
                This number ranges from 1 to the value of
                fcFeModulePortCapacity for the associated module. The
                value remains constant for the identified FxPort until
                the module is re-initialized."
            ::= { fcFxPortCapEntry 2 }

        fcFxPortCapFcphVersionHigh OBJECT-TYPE
            SYNTAX      FcphVersion
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The highest or most recent version of FC-PH that the
                FxPort is capable of supporting."
            ::= { fcFxPortCapEntry 3 }

        fcFxPortCapFcphVersionLow OBJECT-TYPE
            SYNTAX      FcphVersion
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The lowest or earliest version of FC-PH that the FxPort
                is capable of supporting."
            ::= { fcFxPortCapEntry 4 }

        fcFxPortCapBbCreditMax OBJECT-TYPE
            SYNTAX      FcBbCredit
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The maximum number of receive buffers available for
                holding Class 1 connect-request, Class 2 or Class 3
                frames from the attached NxPort."
            ::= { fcFxPortCapEntry 5 }

        fcFxPortCapBbCreditMin OBJECT-TYPE
            SYNTAX      FcBbCredit
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The minimum number of receive buffers available for
                holding Class 1 connect-request, Class 2 or Class 3
                frames from the attached NxPort."
            ::= { fcFxPortCapEntry 6 }

        fcFxPortCapRxDataFieldSizeMax OBJECT-TYPE
            SYNTAX      FcRxDataFieldSize
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The maximum size in bytes of the Data Field in a frame
                that the FxPort is capable of receiving from its
                attached NxPort."
            ::= { fcFxPortCapEntry 7 }

        fcFxPortCapRxDataFieldSizeMin OBJECT-TYPE
            SYNTAX      FcRxDataFieldSize
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The minimum size in bytes of the Data Field in a frame
                that the FxPort is capable of receiving from its
                attached NxPort."
            ::= { fcFxPortCapEntry 8 }

        fcFxPortCapCos OBJECT-TYPE
            SYNTAX      FcCosCap
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A value indicating the set of Classes of Service that
                the FxPort is capable of supporting."
            ::= { fcFxPortCapEntry 9 }

        fcFxPortCapIntermix OBJECT-TYPE
            SYNTAX      INTEGER {
				yes (1),
				no  (2)
			}
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A flag indicating whether or not the FxPort is capable
                of supporting the intermixing of Class 2 and Class 3
                frames during a Class 1 connection. This flag is only
                valid if the port is capable of supporting Class 1
                service."
            ::= { fcFxPortCapEntry 10 }

        fcFxPortCapStackedConnMode OBJECT-TYPE
            SYNTAX      FcStackedConnMode
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A value indicating the mode of Stacked Connect request
                that the FxPort is capable of supporting."
            ::= { fcFxPortCapEntry 11 }

        fcFxPortCapClass2SeqDeliv OBJECT-TYPE
            SYNTAX      INTEGER {
				yes (1),
				no  (2)
			}
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A flag indicating whether or not the FxPort is capable
                of supporting Class 2 Sequential Delivery."
            ::= { fcFxPortCapEntry 12 }

        fcFxPortCapClass3SeqDeliv OBJECT-TYPE
            SYNTAX      INTEGER {
				yes (1),
				no  (2)
			}
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "A flag indicating whether or not the FxPort is capable
                of supporting Class 3 Sequential Delivery."
            ::= { fcFxPortCapEntry 13 }

        fcFxPortCapHoldTimeMax OBJECT-TYPE
            SYNTAX      MicroSeconds
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The maximum holding time (in microseconds) that the
                FxPort is capable of supporting."
            ::= { fcFxPortCapEntry 14 }

        fcFxPortCapHoldTimeMin OBJECT-TYPE
            SYNTAX      MicroSeconds
            ACCESS      read-only
            STATUS      mandatory
            DESCRIPTION
               "The minimum holding time (in microseconds) that the
                FxPort is capable of supporting."
            ::= { fcFxPortCapEntry 15 }

        fcFxPortCapBaudRates OBJECT-TYPE
            SYNTAX      Fc0BaudRateCap
            ACCESS      read-only
            STATUS      deprecated
            DESCRIPTION
               "A value indicating the set of baud rates that the FxPort
                is capable of supporting. This variable has been
                deprecated and may be implemented for backward
                compability."
            ::= { fcFxPortCapEntry 16 }

        fcFxPortCapMedia OBJECT-TYPE
            SYNTAX      Fc0MediaCap
            ACCESS      read-only
            STATUS      deprecated
            DESCRIPTION
               "A value indicating the set of media that the FxPort is
                capable of supporting. This variable has been deprecated
                and may be implemented for backward compability."
            ::= { fcFxPortCapEntry 17 }

END
