mirror of
https://github.com/librenms/librenms.git
synced 2024-09-22 02:48:37 +00:00
1510 lines
64 KiB
Plaintext
1510 lines
64 KiB
Plaintext
|
||
IBM-BCCUSTOM-MIB DEFINITIONS ::= BEGIN
|
||
IMPORTS
|
||
DisplayString, TEXTUAL-CONVENTION
|
||
FROM SNMPv2-TC
|
||
Integer32, OBJECT-IDENTITY, OBJECT-TYPE,
|
||
IpAddress, enterprises
|
||
FROM SNMPv2-SMI
|
||
InetAddress
|
||
FROM INET-ADDRESS-MIB;
|
||
|
||
|
||
ibm OBJECT IDENTIFIER ::= { enterprises 2 }
|
||
ibmProd OBJECT IDENTIFIER ::= { ibm 6 }
|
||
|
||
bcCustom MODULE-IDENTITY
|
||
LAST-UPDATED "201310151730Z"
|
||
ORGANIZATION "Brocade Communications Systems, Inc.,"
|
||
CONTACT-INFO "Customer Support Group
|
||
Brocade Communications Systems,
|
||
1745 Technology Drive,
|
||
San Jose, CA 95110 U.S.A
|
||
Tel: +1-408-392-6061
|
||
Fax: +1-408-392-6656
|
||
Email: support@Brocade.COM
|
||
WEB: www.brocade.com"
|
||
|
||
DESCRIPTION "The MIB module is to get the details of Pharos Embedded switch.
|
||
copyright (c) 1996-2003 Brocade Communications Systems, Inc.
|
||
All rights reserved."
|
||
|
||
|
||
REVISION "201310151730Z" -- Oct 15, 2013 05:30pm
|
||
DESCRIPTION "Initial version of this module."
|
||
|
||
::= { ibmProd 215 }
|
||
|
||
|
||
bcCustomMibVersion OBJECT-IDENTITY
|
||
STATUS current
|
||
DESCRIPTION "The OID subtree for version information"
|
||
::= { bcCustom 1 }
|
||
|
||
ports OBJECT-IDENTITY
|
||
STATUS current
|
||
DESCRIPTION "The OID subtree for Portmodule details"
|
||
::= { bcCustom 2 }
|
||
|
||
firmware OBJECT-IDENTITY
|
||
STATUS current
|
||
DESCRIPTION "The OID subtree for Firmware operations"
|
||
::= { bcCustom 3 }
|
||
|
||
files OBJECT-IDENTITY
|
||
STATUS current
|
||
DESCRIPTION "The OID subtree for various file operations"
|
||
::= { bcCustom 4 }
|
||
|
||
protocols OBJECT-IDENTITY
|
||
STATUS current
|
||
DESCRIPTION "The OID subtree for various protocol configuration operations"
|
||
::= { bcCustom 5 }
|
||
|
||
snmpuser OBJECT-IDENTITY
|
||
STATUS current
|
||
DESCRIPTION "The OID subtree for SNMPV3 user configuration operations"
|
||
::= { bcCustom 6 }
|
||
|
||
license OBJECT-IDENTITY
|
||
STATUS current
|
||
DESCRIPTION "The OID subtree for feature license key configuration operations"
|
||
::= { bcCustom 7 }
|
||
|
||
mibCustomVersion OBJECT IDENTIFIER ::= { bcCustomMibVersion 1 }
|
||
mibMajorMinor OBJECT-TYPE
|
||
SYNTAX Integer32
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "The MIB major and minor version number is a 4 byte value of the form
|
||
xx:xx:yy:yy. The higher 2 byte (xx:xx) is for the major version number. The
|
||
lower 2 byte (yy:yy) is for the minor version number.
|
||
Rule of MIB Version:
|
||
Major: Incremented by one every time a new object is added. When the Major
|
||
number is incremented the Minor number should be reset and start at the value 1.
|
||
Minor: Increment by one only when an object is modified and no new object(s)
|
||
are added."
|
||
::= {mibCustomVersion 1}
|
||
|
||
-- Switch Global
|
||
iomGlobal OBJECT IDENTIFIER ::= { bcCustomMibVersion 2 }
|
||
-- Switch capability
|
||
iomCapability OBJECT-TYPE
|
||
SYNTAX INTEGER(0..65535)
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "The AMM will use this object read the IOM capabilities. The IOM must set
|
||
its capabilities prior to its POST transition.
|
||
The unsigned INTEGER value will be treated as the 32 bits in network byte order.
|
||
That is the bit 0 will be the left most bit and bit 31 will be the right most bit. The
|
||
bit pattern definition is defined as below.
|
||
|
||
Bit(31): IOM Mode Changeable: Set to 1, IOM supports to change its
|
||
operation mode.
|
||
Bit(30): Reserved for Port Based VLAN: Set to 1, IOM supports port based VLAN.
|
||
Bit(29): Reserved for Port Statistics: Set to 1, IOM supports port statistics.
|
||
Bit(28): Firmware group: Set to 1, IOM supports firmware group MIB objects.
|
||
Bit(27): Files group: : Set to 1, IOM supports files group MIB objects.
|
||
Bit(26): Reserved for VLAN group: Set to 1, IOM supports system vlan group MIB objects.
|
||
Bit(25): Protocols: Set to 1, IOM supports protocols group MIB objects.
|
||
Bit(24): Port Information: Set to 1, IOM supports port information group MIB objects.
|
||
Bit(23): Feature License Information:Set to 1, IOM supports license key
|
||
status reporting group MIB objects.
|
||
Bit(22): PCI Adapter Inventory Information: Set 626 to 1, IOM supports
|
||
reporting of PCI Adapter Inventory group MIB objects. Note: applicable
|
||
for a PCIe IOM only.
|
||
Bit(0-21): Reserved: must be set to zeroes."
|
||
::= {iomGlobal 1}
|
||
|
||
iomMode OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
managedSwitchMode(1),
|
||
passthruNativeMode(2),
|
||
passthruEnhanceMode(3)
|
||
}
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "This MIB object provides the ability to read and write the current
|
||
operation mode of operation of the IOM"
|
||
::= {iomGlobal 2}
|
||
|
||
portInformation OBJECT IDENTIFIER ::= { ports 1 }
|
||
-- Port Module Information Table
|
||
portInformationTable OBJECT-TYPE
|
||
SYNTAX SEQUENCE OF PortInformationEntry
|
||
MAX-ACCESS not-accessible
|
||
STATUS current
|
||
DESCRIPTION "Table that contains port information for the I/O Module."
|
||
::= { portInformation 1 }
|
||
|
||
-- Make the portModuleIndex and portModuleType as key of the OID
|
||
portInformationEntry OBJECT-TYPE
|
||
SYNTAX PortInformationEntry
|
||
MAX-ACCESS not-accessible
|
||
STATUS current
|
||
DESCRIPTION "I/O Module port entry"
|
||
INDEX { portModuleIndex, portModuleType }
|
||
::= { portInformationTable 1 }
|
||
|
||
-- Port Module Information Table contain
|
||
PortInformationEntry ::= SEQUENCE {
|
||
portModuleIndex INTEGER,
|
||
portModuleType INTEGER,
|
||
portModuleLinkState INTEGER,
|
||
portModuleLabel OCTET STRING,
|
||
portModuleSpeed INTEGER,
|
||
portModuleMedia INTEGER,
|
||
portModuleProtocol INTEGER,
|
||
portModuleTotal INTEGER,
|
||
portModuleSpeedList OCTET STRING,
|
||
portModuleReal INTEGER,
|
||
portModuleRelative INTEGER,
|
||
portModuleLaneCount INTEGER,
|
||
portModuleCableLength INTEGER,
|
||
portModuleCableManufacturer OCTET STRING,
|
||
portModuleCableCompatiblity INTEGER,
|
||
portModuleCableType OCTET STRING,
|
||
portModuleDataRate INTEGER,
|
||
portModuleLicensedState INTEGER
|
||
}
|
||
-- Port Module Information - Port index
|
||
|
||
portModuleIndex OBJECT-TYPE
|
||
SYNTAX INTEGER(0..65535)
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "I/O Module port sequence index."
|
||
::= { portInformationEntry 1 }
|
||
|
||
-- Port Module Information - Port type
|
||
portModuleType OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
unUsed(0),
|
||
externalPort(1),
|
||
externalManagementPort(2),
|
||
externalDualPort(3),
|
||
bladePort(4),
|
||
mmManagementPort(5),
|
||
uplinkPort(6),
|
||
interModulePort(7),
|
||
interModuleManagementPort(8),
|
||
interModuleDualPort(9),
|
||
interModuleExternalBridgePort(10),
|
||
interModuleInternalBridgePort(11)
|
||
}
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "Indicates the given port type of the I/O Module. The definitions of port types are:
|
||
unUsed: the value of zero indicates the request is for a real port index of the IOM
|
||
in the OID. In the port type GET operation, the return value of zero means the
|
||
port is not used for anything.
|
||
externalPort: This port is connected to an external device and is for data traffic.
|
||
externalManagementPort: This port is solely for an external management
|
||
connection. This port is not used for data traffic from an external device
|
||
externalDualPort: This port is used for both data traffic as well as for
|
||
management traffic.
|
||
bladePort : This port is connected to a blade.
|
||
mmManagementPort: This port is connected to the Management Module.
|
||
uplinkPort: This port is configured for up link functionality.
|
||
interModulePort(: This port is connected to another I/O Module for data.
|
||
interModuleManagementPort: This port is connected to another I/O Module for
|
||
management purpose.
|
||
interModuleDualPort: The port is connected to another I/O Module and can be
|
||
used for both data and management purpose.
|
||
interModuleExternalBridgePort: This port is an external bridge port that connects
|
||
to another bridge.
|
||
interModuleInternalBridgePort: This port is an internal bridge port that connects
|
||
to chassis bridge module.
|
||
|
||
To get the port type of a given port, the port type in OID must be zero and the
|
||
port command in the OID is 2. For an example: To get a port type of the real port
|
||
index 7, the OID would be: 1.3.6.1.4.1.2.6.215.2.1.1.1.2.7.0 and the result should
|
||
be 4 (bladePort)."
|
||
::= { portInformationEntry 2 }
|
||
|
||
-- Port Module Information - Port link state
|
||
portModuleLinkState OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
down(0),
|
||
up(1),
|
||
initialized(2)
|
||
}
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "The current port link state of the I/O Module.
|
||
down: the physical port is down or off.
|
||
up: the physical port 817 is up and active
|
||
initialized: the physical port has completed initializion but is not active yet."
|
||
::= { portInformationEntry 3}
|
||
|
||
-- Port Module Information - Port label
|
||
portModuleLabel OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..128))
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "The port string label of the I/O module. The IOM may allow for the port label to
|
||
be configured from the I/O Modules user interface but the default port label must
|
||
reflect.port type description as defined below:
|
||
Unused port
|
||
External port
|
||
External Management port
|
||
External Dual port
|
||
Blade port
|
||
MM Management port
|
||
Up-Link port
|
||
Interconnect Modular port
|
||
Interconnect Modular Management port
|
||
Interconnect Modular Dual port
|
||
The write ACCESS will allow AMM to change the port label as needed."
|
||
::= { portInformationEntry 4 }
|
||
|
||
-- Port Module Information - Port Speed
|
||
portModuleSpeed OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
autoduplex(0),
|
||
hundred-Mbpsfullduplex(1),
|
||
one-Gbpsfullduplex(10),
|
||
two-Gbpsfullduplex(20),
|
||
four-Gbpsfullduplex(40),
|
||
six-Gbpsfullduplex(60),
|
||
eight-Gbpsfullduplex(80),
|
||
ten-Gbpsfullduplex(100),
|
||
fourteen-Gbpsfullduplex(140),
|
||
sixteen-Gbpsfullduplex(160),
|
||
twenty-Gbpsfullduplex(200),
|
||
fourty-Gbpsfullduplex(400),
|
||
fivtysix-Gbpsfullduplex(560),
|
||
sixty-Gbpsfullduplex(600),
|
||
eighty-Gbpsfullduplex(800),
|
||
hundred-Gbpsfullduplex(1000),
|
||
hundredandtwelve-Gbpsfullduplex(1120),
|
||
hundredandsixtyeight-Gbpsfullduplex(1680)
|
||
}
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "The INTEGER value will indicate the current speed of the port.
|
||
The INTEGER values are defined as follows: A signed value is Half duplex, A unsigned value is FULL
|
||
Duplex. The value is the speed in multiple of 100 Mbps. The value of 0 is special
|
||
for AUTO Speed, Auto Duplex. For example:
|
||
0: (SET) Auto Speed, Auto Duplex, GET (Not available due to link down)
|
||
-1: 100 Mbps Half Duplex
|
||
1: 100 Mbps FULL Duplex
|
||
10: 1 Gbps FULL Duplex
|
||
20: 2 Gbps FULL Duplex
|
||
40: 4 Gbps FULL Duplex.
|
||
60: 6 Gbps FULL Duplex.
|
||
80: 8 Gbps FULL Duplex
|
||
100: 10 Gbps FULL Duplex
|
||
140: 14 Gbps FULL Duplex
|
||
160: 16 Gbps FULL Duplex
|
||
200: 20 Gbps FULL Duplex
|
||
400: 40 Gbps FULL Duplex
|
||
560: 56 Gbps FULL Duplex
|
||
600: 60 Gbps FULL Duplex
|
||
800: 80 Gbps FULL Duplex
|
||
1000: 100 Gbps FULL Duplex
|
||
1120: 112 Gbps FULL Duplex
|
||
1680: 168 Gbps FULL Duplex
|
||
The value of zero is invalid in the get operation but it is valid in the set operation
|
||
(Zero is the value used for a set operation for Auto Speed, Auto Duplex )."
|
||
::= { portInformationEntry 5 }
|
||
|
||
-- Port Module Information - Port Media8
|
||
portModuleMedia OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
copper(0),
|
||
serdes(1),
|
||
opticalShortHaul(32),
|
||
opticalInterHaul(40),
|
||
opticalLongHaul(48),
|
||
other(255)
|
||
}
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "The port media type of the I/O Module."
|
||
::= { portInformationEntry 6 }
|
||
|
||
-- Port Module Information - Port Protocol
|
||
portModuleProtocol OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
ethernet(16),
|
||
fibreChannel(32),
|
||
scalability(48),
|
||
infiniband(64),
|
||
pciExpress(80),
|
||
myrinet(112),
|
||
serial(120)
|
||
}
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "The port protocol of the I/O Module."
|
||
::= { portInformationEntry 7 }
|
||
|
||
-- Port Module Information Total port available
|
||
portModuleTotal OBJECT-TYPE
|
||
SYNTAX INTEGER(0..65535)
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "This value must return the the total number of ports supported on the IOM. This
|
||
value must be customized
|
||
Note: When an IOM supports the ability to activate additional ports supported by the
|
||
IOM hardware by installing a license key then this OID can be set in two different ways,
|
||
such that the CMM firmware will handle displaying the port information correctly.
|
||
|
||
(1) The IOM firmware will account for both activated and un-activated ports due to the
|
||
current installed license key and set the 'Total port available' equal
|
||
to the activated ports only.
|
||
(2) The IOM firmware does not differentiate and account for both activated and
|
||
un-activated ports due to the current installed license key and set the
|
||
'Total port available' equal to the maximum supported ports by the IOM hardware.
|
||
|
||
In addition the OID 'portModuleLabel' for a non-activated port must be set to
|
||
'Unused' and the 'portModuleLicensedState' must be set to 'notLicensed'.
|
||
|
||
Although the CMM will handle either (1) or (2) above the IOM should implement (1)
|
||
to assist the CMM user interface response time when displaying port information
|
||
for the IOM. When an IOM implements (2) this will increase the CMM response time
|
||
since this will require the CMM to issue more SNMP get operations for the various
|
||
port information OID's and then discard the information for the user interface."
|
||
|
||
::= { portInformationEntry 8 }
|
||
|
||
-- Port Module Information Port Speed list
|
||
portModuleSpeedList OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..128))
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "The string contains all the available speed settings that is applicable to the port.
|
||
It is a special format so the application can parse the string to obtain all the
|
||
possible speed settings. The speeds supported are define by 927 a token inside the
|
||
pair of <> brackets. Inside the bracket there are two parts: the speed number
|
||
which is the multiple of 100 Mbps and a word either HALF or FULL. For examples:
|
||
<1 HALF> indicates 100 Mbps Half Duplex.
|
||
<1 FULL> is 100 Mbps Full Duplex.
|
||
<10 FULL> is 1 Gbps FULL Duplex.
|
||
<20 FULL> is 2 Gbps FULL Duplex.
|
||
<40 FULL> is 4 Gbps FULL Duplex
|
||
<60 FULL> is 6 Gbps FULL Duplex
|
||
<80 FULL> is 8 Gbps FULL Duplex
|
||
<100 FULL> is 10 Gbps FULL Duplex.
|
||
<140 FULL> is 14 Gbps FULL Duplex.
|
||
<160 FULL> is 16 Gbps FULL Duplex.
|
||
<200 FULL> is 20 Gbps FULL Duplex
|
||
<400 FULL> is 40 Gbps FULL Duplex
|
||
<560 FULL> is 56 Gbps FULL Duplex
|
||
<600 FULL> is 60 Gbps FULL Duplex.
|
||
<800 FULL> is 80 Gbps FULL Duplex.
|
||
<1000 FULL> is 100 Gbps FULL Duplex.
|
||
<1120 FULL> is 112 Gbps FULL Duplex.
|
||
<1680 FULL> is 168 Gbps FULL Duplex.
|
||
<AUTO> is a special token to indicate Auto Speed, Auto Duplex.
|
||
<END> is a special token to mark the end of the list.
|
||
The format of the string is
|
||
<token><token><token> <END>
|
||
The first token is always the current setting of the port.
|
||
examples:
|
||
<AUTO><1 HALF><1 FULL><10 FULL><40 FULL><100 FULL><END>
|
||
The example shows the port is currently set as AUTO. The port can be set to any
|
||
value of Auto, 100 Mbps Half Duplex, 100 Mbps Full Duplex, 1 Gbps Full Duplex,
|
||
4 Gbps Full Duplex, and 10 Gbps Full Duplex."
|
||
::= { portInformationEntry 9 }
|
||
|
||
-- Port Module Information Relative port index to real port index
|
||
-- This object is to map to relative port index to the real port index.
|
||
-- The caller will supply the relative port index and the server will return the real port index.
|
||
-- For an example in the table above, if the caller supply the relative port index information
|
||
-- of external port index 3, the server will return value of 19 which is the real port index of
|
||
-- that relative port. The OID of the caller would be 1.3.6.1.4.1.2.6.215.2.1.1.1.10.3.1
|
||
-- The return value from server is 19.
|
||
|
||
portModuleReal OBJECT-TYPE
|
||
SYNTAX INTEGER(0..65535)
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "To map from relative port index based on port type to the real port index of the
|
||
server."
|
||
::= { portInformationEntry 10 }
|
||
|
||
-- Port Module Information Real port index to relative port index
|
||
-- This object is to map to real port index to the relative port index.
|
||
-- The caller will supply the real port index and the server will return the relative port index.
|
||
-- For an example in the table above, if the caller supply the real port index 16, the server will
|
||
-- return value of 2 which is the relative port index of that port (Management 982 port). The server
|
||
-- only return the relative port index not the port type. The caller will use another call
|
||
-- to determine to port type so it can determine which port index 2 is for which port type.
|
||
-- The OID of the caller would be 1.3.6.1.4.1.2.6.215.2.1.1.1.11.16.0
|
||
-- The return value from server is 2.
|
||
|
||
portModuleRelative OBJECT-TYPE
|
||
SYNTAX INTEGER(0..65535)
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "To map from real port index to the relative port index of the server."
|
||
::= { portInformationEntry 11 }
|
||
|
||
-- Port Module Information - Port Lane Count
|
||
portModuleLaneCount OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
onex(1),
|
||
twox(2),
|
||
fourx(4),
|
||
eightx(8),
|
||
twelvex(12),
|
||
sixteenx(16)
|
||
}
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "The value represents the number of lanes supported by the port."
|
||
::= { portInformationEntry 12}
|
||
|
||
-- Port Module Information - Port External Cable Length
|
||
portModuleCableLength OBJECT-TYPE
|
||
SYNTAX INTEGER(0..65535)
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "The length (in meters) of the cable supported by this port."
|
||
::= { portInformationEntry 13}
|
||
|
||
-- Port Module Information - Port External Cable Manufacturer
|
||
portModuleCableManufacturer OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..128))
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "A string that contains the cable manufacturer. The name cannot exceed 64 1028 octets."
|
||
::= { portInformationEntry 14}
|
||
|
||
-- Port Module Information - Port External Cable Compatiblity
|
||
portModuleCableCompatiblity OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
incompatible(0),
|
||
compatible(1),
|
||
compatibleButNotRecommnded(2)
|
||
}
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "Indicates the compatibility of the external cable which is currently plugged into
|
||
this port."
|
||
::= { portInformationEntry 15}
|
||
|
||
-- Port Module Information - Port External Cable Type
|
||
portModuleCableType OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..128))
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "A string that designates the external cable type for this port. The name cannot
|
||
exceed 64 octets. For example, Active Copper, Passive Copper, Active Fibre,
|
||
Passive Fibre."
|
||
::= { portInformationEntry 16}
|
||
|
||
-- Port Module Information - Port Data Rate
|
||
portModuleDataRate OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
sdr(0),
|
||
ddr(1),
|
||
qdr(2),
|
||
edr(3),
|
||
fdr(4)
|
||
}
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "The value represents the data rate supported for this port. SDR (single data
|
||
rate), DDR (double data rate), QDR (quad data rate), EDR (enhanced data rate),
|
||
FDR (fourteen data rate)."
|
||
::= { portInformationEntry 17}
|
||
|
||
-- Port Module Information - Port License State
|
||
portModuleLicensedState OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
notApplicable(0),
|
||
notLicensed(1),
|
||
licensed(2)
|
||
}
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "The value represents the port license state. If this port is a base port that does
|
||
not require a license key then the state will always indicate notApplicable. If the
|
||
port needs to be enabled by a license key then the state may be licensed or not
|
||
licensed depending on if the license key is installed."
|
||
::= { portInformationEntry 18}
|
||
|
||
|
||
firmwareOps OBJECT IDENTIFIER ::= { firmware 1 }
|
||
|
||
-- Firmware Image Information Table
|
||
fwInformationTable OBJECT-TYPE
|
||
SYNTAX SEQUENCE OF FwInformationEntry
|
||
MAX-ACCESS not-accessible
|
||
STATUS current
|
||
DESCRIPTION "Table of Firmware Image information."
|
||
::= { firmwareOps 1 }
|
||
|
||
fwInformationEntry OBJECT-TYPE
|
||
SYNTAX FwInformationEntry
|
||
MAX-ACCESS not-accessible
|
||
STATUS current
|
||
DESCRIPTION "I/O Module Firmware Image entry"
|
||
INDEX { fwImageIndex }
|
||
::= { fwInformationTable 1 }
|
||
|
||
-- Firmware Image Information Table contain
|
||
FwInformationEntry ::= SEQUENCE {
|
||
fwImageIndex INTEGER,
|
||
fwImageInformation OCTET STRING,
|
||
fwImageFileLocation INTEGER,
|
||
fwImageProtocols OCTET STRING,
|
||
fwImageIsUpdateable INTEGER
|
||
}
|
||
|
||
-- Firmware Image Information index
|
||
fwImageIndex OBJECT-TYPE
|
||
SYNTAX INTEGER(0..65535)
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "Firmware Image index."
|
||
::= { fwInformationEntry 1 }
|
||
|
||
-- Firmware Image Information
|
||
fwImageInformation OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..1024))
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "Information about the image - This string must follow the format below:
|
||
Version: %s\n, Rel-Date: %s\n, Status: %s\n, Type: %s\n, Size: %s\n, Other-Info: %s\n\
|
||
|
||
Version: The version of the image and should match firmware VPD information.
|
||
Rel-Date: The release date of the image which should match firmware VPD
|
||
information of form MM/DD/YYYY.
|
||
Status: To show if the image is currently Active or Not-Active (backup image )
|
||
or Reboot-Active (requires reboot to become active image) and should match
|
||
firmware VPD information.
|
||
Type: Boot Rom, Application, Bundled, Diagnostic, Generic Firmware
|
||
which should match firmware VPD information. A Boot Rom or Application or
|
||
Diagnostic or Generic image should be used to designate that the image is a
|
||
single file when updates are performed for the targeted type of firmware.
|
||
A Bundled image type would be used to designate that the file contains multiple
|
||
firmware update packages. This should be used if all images in the bundled
|
||
image have the same version, Release date, . If a bundled image then the image
|
||
types included in the bundle must be listed in the Other Info.
|
||
Size: Size of image in KB (Kilobyte) rounded to next 1KB increment. (Note: the
|
||
MM will read the size of the current image in the IOM and if the size exceeds the
|
||
allowable space on the MMs internal file system then the MM will not allow the
|
||
file to be uploaded. In addition if the current image file size is within the limits of
|
||
the MMs file system but the MM determines the new update image on an
|
||
external server would exceed the MMs internal file systems allocation then the
|
||
MM will fail the update. In this case the user on the MM will have to directly
|
||
transfer the image to the IOM and not use the MMs file system as a source for
|
||
the update.
|
||
Other-Info: Any additional information that the IOM wishes to provide.
|
||
|
||
String example 1: (Bundled image that is expanded on IOM)
|
||
Version: 20.2.2.9, Rel Date: 09/26/2011, Type: Bundled, Status: Active,
|
||
Size:27500KB, Other Info: Contains Boot ROM and Application images.
|
||
|
||
String example 2: (Application image that is the backup image)
|
||
Version: 20.1.0.20, Rel Date: 02/27/2012, Type: Application, Status: Not-
|
||
Active, Size:1200KB, Other Info: None
|
||
|
||
String example 3: (Application image that will become the active image on next
|
||
reboot)
|
||
Version: 20.1.0.25, Rel Date: 05/20/2012, Type: Application, Status: Reboot-
|
||
Active, Size:1200KB, Other Info: None
|
||
|
||
The format of the Firmware Image Information is very important and must be
|
||
strictly followed. It is intended for other applications to parse and make use of the
|
||
information. The string is made up of many parts of text information. Each part
|
||
has the format of the form Token: information_string\n,. Each part consists of a
|
||
token followed by token information. The end of each part is marked by a new
|
||
line character, and a comma or a null character.
|
||
The total length of the string cannot exceed 256 octets."
|
||
::= { fwInformationEntry 2 }
|
||
|
||
-- Firmware Image File Location
|
||
fwImageFileLocation OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
mmServer(0),
|
||
externalServerRequired(1)
|
||
}
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "This object indicates whether the IOM implementation of firmware updates has
|
||
requirements on the server that would prevent the MM acting as the server for
|
||
the image file(s). If there are no unique requirements then mmIsServer will not
|
||
be set and one of the other enumerations will need to be set.
|
||
- If the IOM firmware update requires the update file to be un-compressed on
|
||
the server before transfer to the IOM then externalServerRequired must be
|
||
set by IOM.
|
||
- If the IOM firmware update is larger than 100MB the externalServerRequired
|
||
must be set by IOM.
|
||
Additional reasons for restrictions may be added 1198 in the future."
|
||
::= { fwInformationEntry 3 }
|
||
|
||
-- Firmware image update protocols enabled
|
||
fwImageProtocols OBJECT-TYPE
|
||
SYNTAX OCTET STRING (SIZE(0..32))
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "The CMM will use this command to read the current supported and enabled IOM file transfer protocols. The bit mask is treated as 32 bits in network byte order. 1310 That is the bit 0 will be the left most bit and bit 31 will be the right most bit. The bit pattern definition is defined as below.
|
||
Supported Bit Mask (Bits 31:16):
|
||
Bit(31): This bit is set to 1 if TFTP is supported.
|
||
Bit(30): This bit is set to 1 if FTP is supported
|
||
Bit(29): This bit is set to 1 if SFTP (via SSH) is supported
|
||
Bit(28): This bit is set to 1 if HTTP is supported.
|
||
Bit(27): This bit is set to 1 if HTTPs is supported
|
||
Bit(26:16): Reserved: must be set to zeroes.
|
||
Enabled Bit Mask (Bits 15:0):
|
||
Bit(15): This bit is set to 1 if TFTP is enabled.
|
||
Bit(14): This bit is set to 1 if FTP is enabled
|
||
Bit(13): This bit is set to 1 if SFTP (via SSH) is enabled.
|
||
Bit(12): This bit is set to 1 if HTTP is enabled.
|
||
Bit(11): This bit is set to 1 if HTTPs is enabled
|
||
Bit(10:0): Reserved: must be set to zeroes. ."
|
||
::= { fwInformationEntry 4}
|
||
|
||
--Firmware Image Updateable
|
||
fwImageIsUpdateable OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
updateable(0),
|
||
notupdateable(1)
|
||
}
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "This object indicates whether the firmware image index can be updated
|
||
separately using one of the indicated file transfer mechanisms from
|
||
'fwImageProtocol'. If this specific image cannot be updated then IOM must return
|
||
'notupdateable' otherwise IOM must return updateable'."
|
||
::= { fwInformationEntry 5}
|
||
|
||
-- Firmware Filename
|
||
firmwareCmd OBJECT IDENTIFIER ::= { firmwareOps 2 }
|
||
|
||
firmwareImageCnt OBJECT-TYPE
|
||
SYNTAX INTEGER(0..65535)
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "The I/O Module must indicate the number of firmware images that can be
|
||
updated. For example a value of 0 should be used if no images can be updated,
|
||
a value of 1 should be used if 1 firmware image can be updated."
|
||
::= { firmwareCmd 1 }
|
||
|
||
firmwareImageNum OBJECT-TYPE
|
||
SYNTAX INTEGER(0..65535)
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "This value indicates the image number that will be updated. For example, if the
|
||
value is 2, that means firmware image 2 must be updated on the I/O Module.
|
||
This value is write only by MM to the I/O Module."
|
||
::= { firmwareCmd 2 }
|
||
|
||
-- Firmware action
|
||
firmwareAction OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
unknown(0),
|
||
get(1),
|
||
rsvd2(2),
|
||
rsvd3(3),
|
||
rsvd4(4),
|
||
rsvd5(5),
|
||
rsvd6(6),
|
||
rsvd7(7),
|
||
rsvd8(8),
|
||
rsvd9(9),
|
||
rsvd10(10)
|
||
}
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "The action the I/O Module must take for the firmware update operation.Upon
|
||
receiving this command IOM must immediately execute the operation with all the
|
||
necessary information which was preset prior to receiving this request"
|
||
::= { firmwareCmd 3 }
|
||
|
||
-- Firmware Update operation status
|
||
fwUpdateOperationStatus OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
noOperation(0),
|
||
success(101),
|
||
failure(201)
|
||
}
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "The status of the firmware update operation
|
||
0: No operation pending.
|
||
1-100: the percentage of completion of the update operation.
|
||
101: success.
|
||
201: failed"
|
||
::= { firmwareCmd 4 }
|
||
|
||
-- Firmware update operation 1252 status string
|
||
firmwareServer OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..128))
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "This is a string of information about the final result of firmware update operation.
|
||
It will further qualify in detail the information provided by the firmware update
|
||
operation status and provide a text string indicating if the operation was
|
||
successful or not successful. When the operation has completed successfully
|
||
then the text string Success should be used. When the operation is not
|
||
successful then a text string such as Failed to contact server or Image was not
|
||
valid, would be appropriate to explain the reason for the failure."
|
||
::= { firmwareCmd 5 }
|
||
|
||
-- Firmware Update Image activation
|
||
fwUpdateImageActivation OBJECT-TYPE
|
||
SYNTAX INTEGER(0..65535)
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "This value indicates which image index that the I/O Module must immediately
|
||
activate."
|
||
::= { firmwareCmd 6 }
|
||
|
||
-- Firmware update URI string
|
||
fwUpdateImageUri OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..512))
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "This is a URI string specifies the protocol and various location parameters to be
|
||
used by the switch to perform a get operation using any of the supported
|
||
protocols TFTP, FTP, sFTP. SFTP and FTP are mandatory and TFTP is
|
||
recommended to support various user update tools. The IOM must report the
|
||
protocols supported for the level of executing firmware in the IOM capabilities
|
||
field of the VPD EEPROM. In this context the CMM (or remote host) acts as the
|
||
server and the IOM acts as the client. The format of this string is as follows:
|
||
<protocol>://<username>:<password>@<IP address or hostname:<port>/<path>/<filename>
|
||
|
||
An example of a URI for the firmware packet file would be:
|
||
ftp://USERID:PASSW0RD@192.168.0.2:30045/tmp/1308 application.img1
|
||
or
|
||
ftp://USERID:PASSW0RD@[fe80::290:27ff:fe29:6019]:30045/tmp/application.img
|
||
or
|
||
sftp://USERID:PASSW0RD@192.168.0.2:30045/tmp/application.img
|
||
or
|
||
sftp://USERID:PASSW0RD@[fe80::290:27ff:fe29:6019]:30045/tmp/application.img
|
||
|
||
where the FTP or sFTP protocol will be used for transferring the packet file,
|
||
username is USERID, password is PASSW0RD, host IP address is either
|
||
fe80::290:27ff:fe29:6019 or 192.168.0.2, port number is 30045, and /tmp is the
|
||
full pathname to the packet file application.img. Note: The URI may or may not
|
||
have a port number. If the port number is not included the default port number for
|
||
that protocol will be used.
|
||
|
||
Some protocols do not need the username, password, and the port number, so
|
||
the minimum requirement for a fully qualified address would be:
|
||
<protocol>://<IP address or hostname>/<path</<filename>
|
||
|
||
An example of a fully qualified address for the firmware packet file can be:
|
||
tftp://192.168.0.2:2022/tmp/application.img.
|
||
|
||
ote: (1) the MM will set the URI to the IOM. This URI may point to a server that
|
||
is internal to the chassis with an IP address/hostname or if the server is external
|
||
to the chassis then a public IP address/ hostname. Therefore the IP address of
|
||
the server may or may not be the MMs IP address. In addition when a public IP
|
||
address/hostname is used the filename in the URI may point to the top level
|
||
directory that contains many files that make up the firmware image and the IOM
|
||
is responsible to accept or reject this operation and indicate this by utilizing the
|
||
status OID.
|
||
|
||
Notes on sftp file transfers:
|
||
(3) Summary: CMM will provide to the IOM the fingerprint of the CMM sftp
|
||
server's public key as part of the other parameters in the URI for the file
|
||
transfer.
|
||
(4) CMM 'sets' to the IOM the URI which will contain the fingerprint (128bit MD5
|
||
fingerprint). For example assume the 128bit MD5 fingerprint of the 1024-bit
|
||
RSA key is '00:6d:75:9e:f3:38:2b:6b:2e:e7:a8:87:9f:ea:26:03'. CMM issues
|
||
a 'set' of the URI to the IOM of form:
|
||
<protocol>://<username>:<password>;<fingerprint>@<IP
|
||
address>:<port>/<path>/<filename.
|
||
Then the URI would be: sftp://USERID:PASSW0RD;
|
||
00:6d:75:9e:f3:38:2b:6b:2e:e7:a8:87:9f:ea:26:03@
|
||
[fe80::290:27ff:fe29:6019]:30045/tmp/application.img
|
||
(5) The fingerprint character string then will be used by IOM to create the
|
||
CMM's sftp servers public key and add to the IOM's known host key file.
|
||
(6) IOM sftp client then connects to the CMM sftp server. Since IOM has the
|
||
CMM sftp servers public key fingerprint the IOM sftp client will look into it's
|
||
known host key file.
|
||
(7) IOM begins the sftp transfer of application.img using the user credentials
|
||
(for example USERID, PASSW0RD) and CMM's sftp server key.
|
||
Note - As of 5/1/2013 this specification assumes that the fingerprint in the URI
|
||
will be for a RSA key only. Therefore all IOM sftp client's when connecting to the
|
||
sftp server will respond to the sftp server and indicate in the
|
||
'server_host_key_algorithms list that a RSA key is the preferred key by listing
|
||
this first in the 'server_host_key_algorithms' parameter 'name-list'. The sftp
|
||
client and server then will be required to use a RSA key for the file transfer. In
|
||
the future the URI syntax will be changed to allow the user to specify which type
|
||
of key (RSA or DSA) the fingerprint is for.
|
||
"
|
||
::= { firmwareCmd 7 }
|
||
|
||
-- Firmware 1307 update key string
|
||
fwUpdateImageSftpRsaKey OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..1024))
|
||
MAX-ACCESS read-write
|
||
STATUS deprecated
|
||
DESCRIPTION "Contains the public 1024 bit RSA key used for a secure file transfer utilizing
|
||
sFTP over a SSH connection.The CMM will issue a set (write) of this object with
|
||
the CMMs current public key when a SFTP transfer is required for a firmware
|
||
transfer will occur to the CMMs SFTP server. This will enable the IOMs SSH
|
||
client to perform SSH public key authentication with the CMMs SSH server."
|
||
::= { firmwareCmd 8 }
|
||
|
||
|
||
-- This section defines the MIB objects to handle IOM system files. These files may include
|
||
-- system log files and configuration files.
|
||
systemFile OBJECT IDENTIFIER ::= { files 1 }
|
||
|
||
-- System Files Information Table
|
||
systemFileInformationTable OBJECT-TYPE
|
||
SYNTAX SEQUENCE OF SystemFileInformationEntry
|
||
MAX-ACCESS not-accessible
|
||
STATUS current
|
||
DESCRIPTION "Table of System File information."
|
||
::= { systemFile 1 }
|
||
|
||
systemFileInformationEntry OBJECT-TYPE
|
||
SYNTAX SystemFileInformationEntry
|
||
MAX-ACCESS not-accessible
|
||
STATUS current
|
||
DESCRIPTION "I/O Module System File entry"
|
||
INDEX { systemFileIndex }
|
||
::= { systemFileInformationTable 1 }
|
||
|
||
-- System File Information Table contain
|
||
SystemFileInformationEntry::= SEQUENCE {
|
||
systemFileIndex INTEGER,
|
||
systemFileInformation OCTET STRING,
|
||
systemFileInformationProtocols OCTET STRING
|
||
}
|
||
|
||
-- Sytem File Information index
|
||
systemFileIndex OBJECT-TYPE
|
||
SYNTAX INTEGER(0..65535)
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "System File index."
|
||
::= { systemFileInformationEntry 1 }
|
||
|
||
-- Sytem File Information
|
||
systemFileInformation OBJECT-TYPE
|
||
SYNTAX OCTET STRING (SIZE(0..128))
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "Information about the system file(s) that are supported by the IOM, on which the
|
||
CMM can perform a get or put operation from/to the IOM. Two types of files are
|
||
mandatory for the IOM, service file and configuration file. This string must follow
|
||
the format below - This string must follow the format below:
|
||
File-Name: %s\n, Size: %d KB\n, Date: %s\n, Category: %s\n, Type: %s, Other-Info: %s\n\0
|
||
|
||
File-Name: The file name of the file i.e service.log, new_config.cfg
|
||
Size: The size of the file in Kbyte.
|
||
Date: The date of the last update to the file. It must be in this format:
|
||
mm/dd/yyyy hh:mm:ss. The hour is from 0-23. The time is based on GMT.
|
||
Category: The system file must be one of the categories below:
|
||
|
||
Service-Data,
|
||
Saved-Configuration,
|
||
Active-Configuration,
|
||
New-Configuration,
|
||
Other Type: It is either binary or text.
|
||
Other-Info: Any additional information that the IOM wishes to provide about the file.
|
||
|
||
String example 1:File Name: service.log, Size: 98 KB Date: 09/26/2008 14:35:21, Category: Service- Data,
|
||
Type:text,
|
||
Other Info: Service Data file.
|
||
|
||
String example 2:
|
||
File Name: config.cfg, Size: 6 KB Date: 09/26/2011 16:35:32, Category: Active-Configuration,
|
||
Type: text, Other Info: Active Configuration file.
|
||
|
||
The format of the System File Information is very important and must be strictly
|
||
followed. It is intended for other applications to parse and make use of the
|
||
information. The string is made up of many parts of text information. Each part
|
||
has the format of the form Token: information_string\n,. Each part consists of a
|
||
token followed by token information. The end of each part is marked by a new
|
||
line character, and a comma or a null character.The total length of the string cannot exceed 256 octets.
|
||
Note: All IOMs must minimally support the Service-Data file type."
|
||
::= { systemFileInformationEntry 2 }
|
||
|
||
-- Sytem File Information update protocols enabled
|
||
systemFileInformationProtocols OBJECT-TYPE
|
||
SYNTAX OCTET STRING (SIZE(0..32))
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "The CMM will use this command to read the current supported and enabled IOM file transfer protocols. The bit mask is treated as 32 bits in network byte order. That is the bit 0 will be the left most bit and bit 31 will be the right most bit. The bit pattern definition is defined as below.
|
||
Supported Bit Mask (Bits 31:16):
|
||
Bit(31): This bit is set to 1 if TFTP is supported.
|
||
Bit(30): This bit is set to 1 if FTP is supported
|
||
Bit(29): This bit is set to 1 if SFTP (via SSH) is supported
|
||
Bit(28): This bit is set to 1 if HTTP is supported.
|
||
Bit(27): This bit is set to 1 if HTTPs is supported
|
||
Bit(26:16): Reserved: must be set to zeroes.
|
||
Enabled Bit Mask (Bits 15:0):
|
||
Bit(15): This bit is set to 1 if TFTP is enabled.
|
||
Bit(14): This bit is set to 1 if FTP is enabled
|
||
Bit(13): This bit is set to 1 if SFTP (via SSH) is enabled.
|
||
Bit(12): This bit is set to 1 if HTTP is enabled.
|
||
Bit(11): This bit is set to 1 if HTTPs is enabled
|
||
Bit(10:0): Reserved: must be set to zeroes. ."
|
||
::= { systemFileInformationEntry 3}
|
||
|
||
|
||
-- This section defines a set of commands that the MM can send to IOM to instruct IOM1
|
||
-- to perform on the file.
|
||
--
|
||
|
||
-- Module System File Commands
|
||
systemFileCmd OBJECT IDENTIFIER ::= { files 2 }
|
||
|
||
-- System File Counter
|
||
systemFileCmdCnt OBJECT-TYPE
|
||
SYNTAX INTEGER(0..65535)
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "The I/O Module must indicate the number of system files that it has available to
|
||
user. For an example a value of 0 should be used if it has no system file, a value
|
||
of 1 should be used if it has 1 system file."
|
||
::= { systemFileCmd 1 }
|
||
|
||
-- System File name & Category
|
||
systemFileCmdFilename OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..128))
|
||
MAX-ACCESS read-write
|
||
STATUS deprecated
|
||
DESCRIPTION "The system file name and category of the file set by AMM that the I/O Module
|
||
must use to perform an operation on the file. The string format of this command
|
||
is defined:
|
||
1366 File-Name: %s\n, Category: %s\n\0
|
||
File-Name: The file name of the file i.e service.log, new_config.cfg
|
||
Category: The system file must be one of the categories defined in the MIB
|
||
Object systemFileInformation.
|
||
|
||
The format of this string is very important and must be strictly followed. The string
|
||
is made up of many parts of text information. Each part has the format of the
|
||
form Token: information_string\n,. Each part consists of a token followed by
|
||
token information. The end of each part is marked by a new line character, and a
|
||
comma or a null character.1433 The total length of the string cannot exceed 256 octets."
|
||
::= { systemFileCmd 2 }
|
||
|
||
-- System File Maximum Size
|
||
systemFileCmdMaxSize OBJECT-TYPE
|
||
SYNTAX INTEGER(0..65535)
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "The AMM will set the maximum file size allowable for the IOM system file when
|
||
IOM upload its system file to a remote server. IOM must not exceed this file size
|
||
limit. The file size will be in KB unit. The value of zero is to denote no limitation. If
|
||
the actual file size of the system file on IOM is greater than the file size limitation,
|
||
AMM will set other filter such as Severity, or timestamp to help reduce the file
|
||
size before IOM upload the file to remote server. If the file size still exceeds the
|
||
limitation, IOM must truncate the file to only include the most recent activity."
|
||
::= { systemFileCmd 3 }
|
||
|
||
systemFileCmdUri OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..1024))
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "This is a URI string that specifies the location and various parameters to be
|
||
used by the switch to perform a get or put operation using any of the supported
|
||
protocols TFTP, FTP, sFTP, SFTP and FTP are mandatory and TFTP is
|
||
recommended to support various user update tools. The IOM must report the
|
||
protocols supported for the level of executing firmware in the IOM capabilities
|
||
field of the VPD EEPROM. In this context the CMM (or remote host) acts as the
|
||
server and the IOM acts as the client. The format of this string is as follows:
|
||
<protocol>://<username>:<password>@<IP address or hostname>:<port>/<path>/<filename>
|
||
|
||
An example of a fully qualified address for the firmware packet file would be:
|
||
ftp://USERID:PASSW0RD@192.168.0.2:30045/tmp/service.log
|
||
or
|
||
ftp://USERID:PASSW0RD@[fe80::290:27ff:fe29:6019]:30045/tmp/service.log
|
||
or
|
||
sftp://USERID:PASSW0RD@192.168.0.2:30045/tmp/service.log
|
||
or
|
||
sftp://USERID:PASSW0RD@[fe80::290:27ff:fe29:6019]:30045/tmp/service.log
|
||
|
||
where the FTP or sFTP protocol will be used for transferring the packet file,
|
||
username is USERID, password is PASSW0RD, host IP address is
|
||
fe80::290:27ff:fe29:6019 or 192.168.0.2, port number is 30045, and /tmp is the
|
||
full pathname to the packet file service.log. Note: The URI may or may not have
|
||
a port number. If the port number is not included the default port number for that
|
||
protocol will be used.
|
||
|
||
Some protocols do not need the username, password, and the port number, so
|
||
the minimum requirement for a fully qualified address would be:
|
||
|
||
<protocol>://<IP address or hostname>/<path</<filename>
|
||
|
||
An example of a fully qualified address for the firmware packet file can be:
|
||
tftp://192.168.0.2:2022/1527 tmp/service.log
|
||
|
||
Note: CMM sets the systemFileCmdUri to provide the URI that includes the IP
|
||
address, protocol, filename.filetype and any authentication parameters.
|
||
a. If the IOM currently has a file contained in the IOM's file-system then the URI
|
||
will contain the appropriate filename.filetype
|
||
b. If the IOM does not generate the file until the file transfer, the CMM will create
|
||
the URI with a prefix filename.filetype such as IOM3_service_.txt. The IOM is
|
||
then responsible to parse the file name for a the category of file being requested
|
||
by the CMM (_'service_' or '_config_' or '_syslog_'). Then concatenate to the
|
||
MM's
|
||
created prefix the IOM's VPD part-number and a timestamp. For example the
|
||
IOM would use the prefix created by CMM 'IOM3_service_.txt'
|
||
to 'IOM3_service_02R1014_20110916-004651.tgz'. (generic format is;
|
||
<IOM(slot number)>_service_<IOM Part Number>_<date: 4 digit year 2 digit
|
||
month 2 digit day>-<time: 2 digit hour 2 digit minutes 2 digit seconds>
|
||
Note: file-type used is completely up to the IOM.
|
||
|
||
Notes on sftp file transfers:
|
||
(1) Summary: CMM will provide to the IOM the fingerprint of the CMM sftp
|
||
server's public key as part of the other parameters in the URI for the file
|
||
transfer.
|
||
(2) CMM 'sets' to the IOM the URI which will contain the fingerprint (128bit MD5
|
||
fingerprint). For example assume the 128bit MD5 fingerprint of the 1024-bit
|
||
RSA key is '00:6d:75:9e:f3:38:2b:6b:2e:e7:a8:87:9f:ea:26:03'. CMM issues
|
||
a 'set' of the URI to the IOM of form:
|
||
<protocol>://<username>:<password>;<fingerprint>@<IP
|
||
address>:<port>/<path>/<filename.
|
||
Then the URI would be: sftp://USERID:PASSW0RD;
|
||
00:6d:75:9e:f3:38:2b:6b:2e:e7:a8:87:9f:ea:26:03@
|
||
[fe80::290:27ff:fe29:6019]:30045/tmp/application.img
|
||
(3) The fingerprint character string then will be used by IOM to create the
|
||
CMM's sftp servers public key and add to the IOM's known host key file.
|
||
(4) IOM sftp client then connects to the CMM sftp server. Since IOM has the
|
||
CMM sftp servers public key fingerprint the IOM sftp client will look into it's
|
||
known host key file. IOM begins the sftp transfer of application.img using the
|
||
user credentials (for example USERID, PASSW0RD) and CMM's sftp server
|
||
key.
|
||
Note - As of 5/1/2013 this specification assumes that the fingerprint in the
|
||
URI will be for a RSA key only. Therefore all IOM sftp client's when
|
||
connecting to the sftp server will respond to the sftp server and indicate in
|
||
the 'server_host_key_algorithms' list that a RSA key is the preferred key by
|
||
listing this first in the 'server_host_key_algorithms' parameter name-list. '
|
||
The sftp client and server then will be required to use a RSA key for the file
|
||
transfer. In the future the URI syntax will be changed to allow the user to
|
||
specify which type of key (RSA or DSA) the fingerprint is for.
|
||
"
|
||
::= {systemFileCmd 4 }
|
||
|
||
systemFileCmdSftpRsaKey OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..1024))
|
||
MAX-ACCESS read-write
|
||
STATUS deprecated
|
||
DESCRIPTION "Contains the public 1024 bit RSA key used for a secure a file transfer utilizing sFTP over a SSH
|
||
connection. The CMM will issue a set (write) of this object with
|
||
the CMMs current public key when a SFTP transfer is required for a firmware
|
||
transfer will occur to the CMMs SFTP server. This will enable the IOMs SSH
|
||
client to perform SSH public key authentication with the CMMs SSH server."
|
||
::= {systemFileCmd 5 }
|
||
|
||
-- System File Operation Execution
|
||
systemFileCmdExecuteOp OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
unknown(0),
|
||
ssget(1),
|
||
cfgget(2),
|
||
cfgput(3)
|
||
}
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "The action the I/O Module must take on the system file MAX-ACCESS operation. Upon
|
||
receiving this command IOM must immediately execute the operation with all the
|
||
necessary information which was preset prior to receiving this request."
|
||
::= {systemFileCmd 6 }
|
||
|
||
systemFileOperationStatus OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
noOperation(0),
|
||
initiated(1),
|
||
generationcompleted(50),
|
||
transfer(51),
|
||
success(101),
|
||
failed(201)
|
||
}
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "The status of the system file operation:
|
||
0: No operation pending.
|
||
1: Switch starting to generate supportshow
|
||
50: Switch done generating supportshow
|
||
51: Switch starting to transfer supportshow .txt file
|
||
101: success.
|
||
201: failed"
|
||
::= {systemFileCmd 7 }
|
||
|
||
systemFileOpStatusString OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..128))
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "This is a string of information about the final result of system file operation. It will
|
||
further qualify in detail the information provided by the system file operation
|
||
status and provide a text string indicating if the operation was successful or not
|
||
successful. When the operation has completed successfully then the text string
|
||
Success should be used. When the operation is not successful then a text
|
||
string such as Failed to contact server or File was not valid, would be
|
||
appropriate to explain the reason for the failure."
|
||
::= {systemFileCmd 8 }
|
||
|
||
systemFileActivation OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
noOp(0),
|
||
activate(1)
|
||
}
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "This object is used only for configuration files. After the transfer of the
|
||
configuration file is completed to the IOM the CMM can use this object to
|
||
immediately activate the configuration file at the IOM."
|
||
::= {systemFileCmd 9 }
|
||
|
||
--The section defines the various protocols that the MM will configure.
|
||
|
||
-- NTP Configuration
|
||
ntpConfig OBJECT IDENTIFIER ::= { protocols 1 }
|
||
|
||
ntpEnable OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
disabled(0),
|
||
enabled(1)
|
||
}
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "Disable/Enable the NTP client. When set to enabled the MM previously set the
|
||
following additional NTP client objects The NTP client must then be configured to
|
||
values specified in the following objects and must update immediately the IOMs
|
||
clock from the configured NTP server address. Note: certain IOM implementations1
|
||
may have their NTP client always enabled AND does not support the ability to
|
||
disable or enable the NTP client from any external user interface.
|
||
- If this is true, then a get of this object will always return enabled and a set to
|
||
enable will return no_error. If a set of this object is performed to disabled then
|
||
the IOM will return a gen_error.
|
||
- If this is not true then a get and set to enable or disable must return no_error."
|
||
::= { ntpConfig 1 }
|
||
|
||
ntpSrvIpv6Address OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..255))
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "NTP server's IPv6 address. Note: This address represents the address that will be
|
||
used for NTP requests and responses that utilize the MM internal port. A value of
|
||
all zeroes indicates no address is configured. Note the MM will set an IPv6 or IPv4
|
||
address. If IPv6 address is set then the IPv4 NTP address will be zero. If IPv4
|
||
address is set then the IPv4 NTP address will be zero."
|
||
::= { ntpConfig 2 }
|
||
|
||
ntpSrvIpv4Address OBJECT-TYPE
|
||
SYNTAX IpAddress
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "NTP server's IPv4 address. Note: This address represents the address that will be
|
||
used for NTP requests and responses that utilize the MM internal port. A value of
|
||
all zeroes indicates no address is configured. Note the MM will set an IPv6 or IPv4
|
||
address. If IPv6 address is set then the IPv4 NTP address will be zero. If IPv4
|
||
address is set then the IPv4 NTP address will be zero."
|
||
::= { ntpConfig 3 }
|
||
|
||
ntpUpdateFrequency OBJECT-TYPE
|
||
SYNTAX INTEGER(0..65535)
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "The frequency in minutes that the NTP client service will synchronize the local
|
||
clock with the NTP server. The value range is 1 to 44640 minutes. Note: certain
|
||
IOM implementations may have their NTP client configured to always perform time
|
||
synchronization at a specific frequency AND does not support the ability to change
|
||
this frequency from any external user interface.
|
||
- If this is true, then a get of this object will always return the frequency rounded to
|
||
a 1 minute interval. If a set is issued for this object then IOM will return a gen_error.
|
||
- If this is true, then a get of this object will always return the frequency rounded to
|
||
a 1 minute interval.
|
||
If a set is issued for this object then IOM will return a gen_error.
|
||
If this is not true then a get and set must return no_error "
|
||
::= { ntpConfig 4 }
|
||
|
||
ntpv3AuthConfig OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..128))
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "The NTP v3 authentication entry to be used for time sync
|
||
with a secure NTP server. The format of an authentication
|
||
entry is <key index>::<key type>::<key>. The <key index> must
|
||
be an INTEGER between 1 and 65534. <key type> must be
|
||
M which signify MD5 encryption. The <key> is the actual value of the authentication
|
||
key (symmetric) as configured on the NTP server. A SET operation can set the
|
||
<key>. A GET operation returns back data in the format:
|
||
<key index>::<key type> and does not return the encryption actual key value."
|
||
::= { ntpConfig 5 }
|
||
|
||
ntpv3AuthEnable OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
disabled(0),
|
||
enabled(1)
|
||
}
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION "Enables/Disables NTPv3 authentication"
|
||
::= { ntpConfig 6 }
|
||
|
||
-- SNMPv3 Configuration
|
||
-- These objects allow for the use of EHCM to configure one additional SNMPv3 user account for
|
||
-- a given IOM that can be utilized by an external application for receiving traps from an IOM<92>s
|
||
-- SNMP agent or performing get/set operations directly to the IOM<92>s SNMP agent.
|
||
iomSnmpv3Cfg OBJECT IDENTIFIER ::= { snmpuser 1 }
|
||
|
||
iomSnmpv3UserName OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..32))
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION
|
||
"String that contains the SNMPv3 userid. Note: this IOM<92>s SNMPv3 user account
|
||
configuration must not be allowed to be altered from any of the IOM UI<92>s."
|
||
::= { iomSnmpv3Cfg 1 }
|
||
|
||
iomSnmpv3UserAuthProtocol OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
sha (1)
|
||
}
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION
|
||
"SNMPv3 - Authentication Protocol supported by the user. The only allowed
|
||
protocol is <91>SHA<92>."
|
||
::= { iomSnmpv3Cfg 2 }
|
||
iomSnmpv3UserAuthPassword OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..32))
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION
|
||
"SNMPv3 User - Authentication password string. Notes: (1) The MM does not
|
||
validate the contents of the password against any password security rules, the IOM
|
||
is responsible for validation and may fail the set of this object, (2) value returned for
|
||
a <91>get<92> request is null for security reasons."
|
||
::= { iomSnmpv3Cfg 3 }
|
||
|
||
iomSnmpv3UserPrivacyProtocol OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
aes (1)
|
||
}
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION
|
||
"SNMPv3 - Privacy Protocol supported by the user. The only allowed protocol is
|
||
<91>AES<92>."
|
||
::= { iomSnmpv3Cfg 4 }
|
||
|
||
iomSnmpv3UserPrivacyPassword OBJECT-TYPE
|
||
SYNTAX OCTET STRING (SIZE(0..32))
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION
|
||
"SNMPv3 User - Privacy password string. Notes: (1) The MM does not validate the
|
||
contents of the password against any password security rules, the IOM is
|
||
responsible for validation and may fail the set of this object, (2) value returned for a
|
||
<91>get<92> request is null for security reasons.."
|
||
::= { iomSnmpv3Cfg 5 }
|
||
|
||
iomSnmpv3UserAccessType OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
no-access(0),
|
||
get-traps(1),
|
||
get-set-traps(2),
|
||
traps-only(3)
|
||
}
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION
|
||
"SNMPv3 User Access level (Get, Set, and Traps) of the user."
|
||
::= { iomSnmpv3Cfg 6 }
|
||
|
||
iomSnmpv3UserIPv6TrapAddress OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..255))
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION
|
||
"Trap destination IPv6 address. Note: This address represents the address that will
|
||
be used by an external application for receiving SNMPv3 traps directly from the
|
||
IOM<92>s SNMPv3 agent user account that has been configured in the user account
|
||
OID(s) (iomSnmpv3User..). This address is in addition to the MM<92>s IP address and
|
||
does not override or replace that trap address. This value is normally set to zero
|
||
and will only be set when the external application request the MM to set to a valid
|
||
IP address. A value of all zeroes indicates no address is configured. Both IPv4 and
|
||
IPv6 addresses can be set and if they are then the IOM must send traps to both the
|
||
IPv4 and IPv6 address. The format will be a string with a generic format of the IPv6
|
||
address as follows: <91>abcd:abcd:abcd:abcd:abcd:abcd:abcd:abcd<92>, also may be the
|
||
compressed IPv6 address format, for example fe80::211:25ff:fec3:d364 ."
|
||
::= { iomSnmpv3Cfg 7 }
|
||
|
||
iomSnmpv3UserIPv4TrapAddress OBJECT-TYPE
|
||
SYNTAX IpAddress
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION
|
||
" Trap destination IP4 address. Note: This address represents the address that will
|
||
be used by an external application for receiving SNMPv3 traps directly from the
|
||
IOM<92>s SNMPv3 agent user account that has been configured in SNMPv3 user
|
||
account OID(s) (iomSnmpv3User). This address is in addition to the MM<92>s IP
|
||
address and does not override or replace that trap address. This value is normally
|
||
set to zero and will only be set when the external application request the MM to set
|
||
to a valid IP address. Both IPv4 and IPv6 addresses can be set and if they are then
|
||
the IOM must send traps to both the IPv4 and IPv6 address. A value of all zeroes
|
||
indicates no address is configured. For example for a valid IPv4 address
|
||
<91>9.72.217.85<92>, this would be represented as <91>0948d955<92>."
|
||
::= { iomSnmpv3Cfg 8 }
|
||
|
||
iomSnmpv3UserState OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
disabled(0),
|
||
enabled(1)
|
||
}
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION
|
||
"Indicates the state of the user: Enabled or Disabled.
|
||
The sequence of creating and enabling a user account or changing various OID<92>s
|
||
of the SNMPv3 user account will be as follows:
|
||
(1) Set the <91>iomSnmpv3UserState<92> to disabled.
|
||
(2) Configure all the appropriate v3 user account information and trap address objects.
|
||
(3) Set the <91>snmpv3UserState<92> to enabled. When the IOM receives a set to enable, the IOM is
|
||
responsible to validate that all the SNMPv3 user objects are valid to create a functioning v3 user
|
||
account. If they are not then the response to this set should fail as described in (4).
|
||
(4) If all objects have been set correctly the response to this object will be
|
||
<91>success<92> otherwise the response will indicate failure. Note: enforcing disabling
|
||
then enabling the user account will ensure no partial account will be configured in
|
||
the IOM SNMP agent."
|
||
::= { iomSnmpv3Cfg 9 }
|
||
|
||
iomSnmpv3UserStateStatusString OBJECT-TYPE
|
||
SYNTAX OCTET STRING (SIZE(4))
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION
|
||
" This object will be a bit string that contains detailed information about the
|
||
SNMPv3 user account status. The intent is that the information string will be
|
||
passed to the external application in the event that the MM set an <91>enable<92> state
|
||
using the object <91>iomSnmpv3UserState<92> and the response to the write of that
|
||
object was a failure due to an invalid account parameter. The bit string in this
|
||
object is only to be used by the MM for the case above, otherwise the data is not
|
||
guaranteed to be accurate. The bit mask is treated as 32 bits in network byte
|
||
order. That is the bit 0 will be the left most bit and bit 31 will be the right most bit.
|
||
The bit pattern definition is defined as below:
|
||
Bit(8:31): reserved must be set to zeroes.
|
||
Bit(8): Set to 1 to indicate the IPv6 trap address is invalid.
|
||
Bit(7): Set to 1 to indicate the IPv4 trap address is invalid
|
||
Bit(6): Set to 1 to indicate the access type is invalid or not set.
|
||
Bit(5): Set to 1 to indicate the privacy 2486 password is invalid or not set
|
||
Bit(4): Set to 1 to indicate the privacy protocol is invalid or not set.
|
||
Bit(3): Set to 1 to indicate 1 the authentication password is invalid or not set.
|
||
Bit(2): Set to 1 to indicate the authentication protocol is invalid or not set.
|
||
Bit(1): Set to 1 to indicate the user-name is invalid or not set.
|
||
Bit(0): If this bit is set to <91>0<92> then this will indicate all account parameters are
|
||
correct. The MM will then ignore all other bits within this object. If this bit is set
|
||
to <91>1<92> then then at least one other bit must be set to indicate what specific
|
||
account parameter(s) are invalid and caused the failed response to the
|
||
<91>iomSnmpv3UserState<92> enable."
|
||
::= { iomSnmpv3Cfg 10 }
|
||
|
||
iomSnmpv3TestTrap OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
traptest(1)
|
||
}
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION
|
||
"This object provides a mechanism to generate a <91>test trap<92>. A set of this object will only
|
||
generate a <91>test trap<92> from the IOM If a valid SNMPv3 user account has been configured and is
|
||
enabled. The trap information should specifically indicate that it contains an informational test
|
||
event."
|
||
::= { iomSnmpv3Cfg 11 }
|
||
|
||
|
||
iomSnmpv3tResetUser OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
reset(1)
|
||
}
|
||
MAX-ACCESS read-write
|
||
STATUS current
|
||
DESCRIPTION
|
||
"This object provides a method to reset all the other objects that make up the SNMPv3 user
|
||
account back to default values. This may be used for security reasons by the MM in order to
|
||
provide a method to ensure the SNMPv3 user account is in a disabled state and all associated
|
||
account information is back to default values (essentially at manufacturing reset values for the
|
||
IOM). The following is a description of the expected account default values:
|
||
- iomSnmpv3UserName - set to zero
|
||
- iomSnmpv3UserAuthProtocol - set to '1' (sha)
|
||
- iomSnmpv3UserAuthPassword - set to zero
|
||
- iomSnmpv3UserPrivacyProtocol - set to '1' (aes)
|
||
- iomSnmpv3UserPrivacyPassword - set to zero
|
||
- iomSnmpv3UserAccessType - set to '0' (no-access)
|
||
- iomSnmpv3UserIPv6TrapAddress - set to zero
|
||
- iomSnmpv3UserIPv4TrapAddress - set to zero
|
||
- iomSnmpv3UserState - set to '0' (disabled)
|
||
- iomSnmpv3UserStateStatusString - set to zero"
|
||
::= { iomSnmpv3Cfg 12 }
|
||
|
||
-- Feature License Key Information
|
||
|
||
-- License Information Table
|
||
licenseKeyInformationTable OBJECT-TYPE
|
||
SYNTAX SEQUENCE OF LicenseKeyInformationEntry
|
||
MAX-ACCESS not-accessible
|
||
STATUS current
|
||
DESCRIPTION "Table of License key information."
|
||
::= { license 1 }
|
||
|
||
licenseKeyInformationEntry OBJECT-TYPE
|
||
SYNTAX LicenseKeyInformationEntry
|
||
MAX-ACCESS not-accessible
|
||
STATUS current
|
||
DESCRIPTION "License Key entry"
|
||
INDEX { licenseKeyIndex }
|
||
::= { licenseKeyInformationTable 1 }
|
||
|
||
-- License Key Information Table Entries
|
||
LicenseKeyInformationEntry::= SEQUENCE {
|
||
licenseKeyIndex INTEGER,
|
||
licenseKeyDescStringInformation OCTET STRING,
|
||
licenseKeyCurrentState INTEGER
|
||
}
|
||
|
||
licenseKeyIndex OBJECT-TYPE
|
||
SYNTAX INTEGER(0..65535)
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "License Key index."
|
||
::= {licenseKeyInformationEntry 1}
|
||
|
||
licenseKeyDescStringInformation OBJECT-TYPE
|
||
SYNTAX OCTET STRING(SIZE(0..1024))
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "Information about the system file - This string must follow the format below:
|
||
Description: %s\n, Date-Time: %s\n, License-ID: %s\n, Other-Info: %s\n\0
|
||
|
||
Description: Description of the license key feature, for example NetCorp 12
|
||
Port License Key Upgrade for Fibre Switch.
|
||
Date-Time: The date and time of the license key was installed in this format:
|
||
mm/dd/yyyy hh:mm:ss. The hour is from 0-23. The time is based on GMT.
|
||
License-ID: License ID, for example 222345K.
|
||
Other-Info: Any additional information that the IOM wishes to provide about the
|
||
key.
|
||
|
||
String example 1:File Description: NetCorp 12 Port License Key Upgrade for Fibre Switch, Date-Time: 09/26/2008 14:35:21,
|
||
License-ID: 222345K, Other Info: Test information.
|
||
|
||
The format of the License Key Information is very important and must be strictly
|
||
followed. It is intended for other applications to parse and make use of the
|
||
information. The string is made up of many parts of text information. Each part
|
||
has the format of the form Token: information_string\n,. Each part consists of a
|
||
token followed by token information. The end of each part is marked by a new
|
||
line character, and a comma or a null character.
|
||
The total length of the string cannot exceed 256 octets."
|
||
::= {licenseKeyInformationEntry 2 }
|
||
|
||
licenseKeyCurrentState OBJECT-TYPE
|
||
SYNTAX INTEGER {
|
||
unknown(0),
|
||
valid(1),
|
||
notValid(2),
|
||
expired(3),
|
||
usageExceeded(4)
|
||
}
|
||
MAX-ACCESS read-only
|
||
STATUS current
|
||
DESCRIPTION "Provides information on the current state of the license"
|
||
::= {licenseKeyInformationEntry 3 }
|
||
|
||
END
|