604 lines
25 KiB
Plaintext
604 lines
25 KiB
Plaintext
ADTRAN-AOSDOWNLOAD DEFINITIONS ::= BEGIN
|
|
|
|
IMPORTS
|
|
Integer32, Gauge32, OBJECT-TYPE, MODULE-IDENTITY
|
|
FROM SNMPv2-SMI
|
|
DisplayString, RowStatus, TDomain, TAddress
|
|
FROM SNMPv2-TC
|
|
MODULE-COMPLIANCE, OBJECT-GROUP
|
|
FROM SNMPv2-CONF
|
|
adIdentity
|
|
FROM ADTRAN-MIB
|
|
adGenAOSCommon, adGenAOSConformance
|
|
FROM ADTRAN-AOS;
|
|
|
|
|
|
adAOSDownloadMib MODULE-IDENTITY
|
|
LAST-UPDATED "200409212216Z" -- September 21, 2004
|
|
ORGANIZATION "ADTRAN, Inc."
|
|
CONTACT-INFO
|
|
" Technical Support Dept.
|
|
Postal: ADTRAN, Inc.
|
|
901 Explorer Blvd.
|
|
Huntsville, AL 35806
|
|
|
|
Tel: +1 800 726-8663
|
|
Fax: +1 256 963 6217
|
|
E-mail: support@adtran.com"
|
|
|
|
DESCRIPTION
|
|
"This MIB defines how the method for commanding an ADTRAN
|
|
OS device to initiate a download or upload of configuration
|
|
or firmware from a TFTP server "
|
|
|
|
REVISION "200409212216Z" -- September 21, 2004
|
|
DESCRIPTION
|
|
"Initial version of this MIB module."
|
|
::= { adIdentity 10000 53 1 3 }
|
|
|
|
adAOSDownload OBJECT IDENTIFIER ::= { adGenAOSCommon 3 }
|
|
|
|
|
|
adAOSDownloadTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF AdAOSDownloadEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A table of firmware downloads to this device.
|
|
There will at any time be either 0 or 1 rows in
|
|
this table, and the only valid index for this
|
|
table is 1. It is only a table so that we may
|
|
take advantage of the RowStatus textual convention
|
|
for configuring the download parameters."
|
|
::= { adAOSDownload 1 }
|
|
|
|
adAOSDownloadEntry OBJECT-TYPE
|
|
SYNTAX AdAOSDownloadEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The row in the adAOSDownloadTable containing the
|
|
download parameters."
|
|
INDEX { adAOSDownloadIndex }
|
|
::= { adAOSDownloadTable 1 }
|
|
|
|
AdAOSDownloadEntry ::=
|
|
SEQUENCE {
|
|
adAOSDownloadIndex INTEGER,
|
|
adAOSDownloadOwnerAddress TAddress,
|
|
adAOSDownloadOwnerDomain TDomain,
|
|
adAOSDownloadTAddress TAddress,
|
|
adAOSDownloadTDomain TDomain,
|
|
adAOSDownloadFilename DisplayString,
|
|
adAOSDownloadResetType INTEGER,
|
|
adAOSDownloadErrorStatus INTEGER,
|
|
adAOSDownloadErrorText DisplayString,
|
|
adAOSDownloadStatus RowStatus,
|
|
adAOSDownloadPassesLeft Integer32,
|
|
adAOSDownloadOctetCount Integer32,
|
|
adAOSDownloadDestination DisplayString, --deprecated
|
|
adAOSDownloadDestinationType INTEGER
|
|
}
|
|
|
|
adAOSDownloadIndex OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
dlInstance(1)
|
|
}
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The index which uniquely identifies this row.
|
|
The only legal value for this object is 1."
|
|
::= { adAOSDownloadEntry 1 }
|
|
|
|
adAOSDownloadOwnerAddress OBJECT-TYPE
|
|
SYNTAX TAddress
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The transport address of the management station
|
|
that initiated this download attempt, formatted
|
|
according to the value of the associated instance
|
|
of adAOSDownloadOwnerDomain."
|
|
::= { adAOSDownloadEntry 2 }
|
|
|
|
adAOSDownloadOwnerDomain OBJECT-TYPE
|
|
SYNTAX TDomain
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The kind of transport service used by the
|
|
management station that initiated this download
|
|
attempt."
|
|
::= { adAOSDownloadEntry 3 }
|
|
|
|
adAOSDownloadTAddress OBJECT-TYPE
|
|
SYNTAX TAddress
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The transport address of the node to download
|
|
firmware from, formatted according to the value of
|
|
the associated instance of adAOSDownloadTDomain.
|
|
|
|
An attempt to modify this value will fail if the
|
|
associated adAOSDownloadStatus object would be
|
|
equal to 'active' both before and after the
|
|
modification attempt."
|
|
::= { adAOSDownloadEntry 4 }
|
|
|
|
adAOSDownloadTDomain OBJECT-TYPE
|
|
SYNTAX TDomain
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The kind of transport service to be used for the
|
|
download. Currently supports snmpUDPDomain and
|
|
snmpIPXDomain.
|
|
|
|
An attempt to modify this value will fail if the
|
|
associated adAOSDownloadStatus object would be
|
|
equal to 'active' both before and after the
|
|
modification attempt."
|
|
::= { adAOSDownloadEntry 5 }
|
|
|
|
adAOSDownloadFilename OBJECT-TYPE
|
|
SYNTAX DisplayString (SIZE(0..63))
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Filename and path of file to download (maximum
|
|
length of 63 characters + NULL).
|
|
|
|
An attempt to modify this value will fail if the
|
|
associated adAOSDownloadStatus object would be
|
|
equal to 'active' both before and after the
|
|
modification attempt."
|
|
::= { adAOSDownloadEntry 6 }
|
|
|
|
adAOSDownloadResetType OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
noReset(1),
|
|
warmReset(2),
|
|
factoryReset(3)
|
|
}
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The type of reset to perform after completion of
|
|
the firmware download. Note that not all agents
|
|
will support all possible values, and there may
|
|
be other agent-specific values for this object."
|
|
::= { adAOSDownloadEntry 7 }
|
|
|
|
adAOSDownloadErrorStatus OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
fileNotFound(1),
|
|
accessViolation(2),
|
|
diskFull(3),
|
|
illegalOperation(4),
|
|
unknownTID(5),
|
|
fileExists(6),
|
|
noSuchUser(7),
|
|
notDefined(8),
|
|
corruptFile(9),
|
|
noServer(10),
|
|
tftpTimeout(11),
|
|
hardwareError(12),
|
|
success(13),
|
|
aborted(14),
|
|
inProgress(15),
|
|
idle(16),
|
|
erasingEeprom(17),
|
|
incompleteFirmware(18),
|
|
requirePowerCycle(19),
|
|
cannotUpgrade(20),
|
|
cannotDowngrade(21)
|
|
}
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Status of download. The first seven codes are
|
|
equal to the codes defined by the TFTP protocol.
|
|
'notDefined' is the same as TFTP protocol error 0.
|
|
The following are the other possible values for this
|
|
object:
|
|
|
|
corruptFile - the agent detected a problem
|
|
with the download file format.
|
|
noServer - the TFTP server at
|
|
adAOSDownloadTAddress did not
|
|
respond to the TFTP request.
|
|
tftpTimeout - the download was aborted due
|
|
to excessive timeouts.
|
|
hardwareError - there was a hardware problem
|
|
on the agent that forced an
|
|
abort of the download (see
|
|
adAOSDownloadErrorText for
|
|
more detailed information).
|
|
success - the download has completed
|
|
successfully.
|
|
aborted - the download was aborted by
|
|
setting the
|
|
adAOSDownloadStatus to
|
|
'notInService' or 'delete'.
|
|
inProgress - the TFTP transfer is currently
|
|
active.
|
|
idle - means that the download has
|
|
not yet started (i.e. the
|
|
value of adAOSDownloadStatus
|
|
has not yet been set to
|
|
'active').
|
|
erasingEeprom - the agent is currently erasing
|
|
the EEPROM device.
|
|
incompleteFirmware - the agent is running an
|
|
incomplete version of firmware
|
|
and requires a download.
|
|
requirePowerCycle - the agent must be power cycled
|
|
to run the newly downloaded
|
|
firmware.
|
|
cannotUpgrade - the agent's current firmware
|
|
revision cannot be upgraded to
|
|
the revision in the download
|
|
file.
|
|
cannotDowngrade - the agent's current firmware
|
|
revision cannot be downgraded
|
|
to the revision in the
|
|
download file."
|
|
::= { adAOSDownloadEntry 8 }
|
|
|
|
adAOSDownloadErrorText OBJECT-TYPE
|
|
SYNTAX DisplayString (SIZE (0..255))
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A textual description of the current error status
|
|
of the firmware download."
|
|
::= { adAOSDownloadEntry 9 }
|
|
|
|
adAOSDownloadStatus OBJECT-TYPE
|
|
SYNTAX RowStatus
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The status of this download entry. This object
|
|
may not be set to 'active' unless the following
|
|
columnar objects exist in this row:
|
|
adAOSDownloadTAddress, adAOSDownloadTDomain,
|
|
adAOSDownloadFilename, and
|
|
adAOSDownloadResetType."
|
|
::= { adAOSDownloadEntry 10 }
|
|
|
|
adAOSDownloadPassesLeft OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of passes remaining in the current
|
|
download attempt. Some agents require multiple
|
|
passes through the download file in order to
|
|
download a firmware image. This object indicates
|
|
the number of passes remaining, including the
|
|
current pass. The object is initialized by the
|
|
agent to the number of passes required to complete
|
|
the download when the corresponding instance of
|
|
adAOSDownloadStatus is set to 'active'. It is
|
|
decremented by one each time a pass completes."
|
|
::= { adAOSDownloadEntry 11 }
|
|
|
|
adAOSDownloadOctetCount OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of octets that have been transferred
|
|
during the current pass. This object is initialized
|
|
to zero by the agent when the corresponding instance
|
|
of adAOSDownloadStatus is set to 'active', and
|
|
reinitialized to zero at the beginning of each pass."
|
|
::= { adAOSDownloadEntry 12 }
|
|
|
|
adAOSDownloadDestination OBJECT-TYPE
|
|
SYNTAX DisplayString (SIZE(0..63))
|
|
MAX-ACCESS read-create
|
|
STATUS deprecated
|
|
DESCRIPTION
|
|
"The destination of the download file.
|
|
The allowable destination names depend on the type
|
|
of agent being downloaded. In all cases, a
|
|
destination of '/os/primary' or '/os/secondary'
|
|
indicates that this is a download of the agent's
|
|
firmware image. The agent will use '/os/primary'
|
|
as the default value for this object when the row
|
|
is created.
|
|
|
|
ICF router agents also allow a download of a config
|
|
file. Currently, the name of the config file on the
|
|
agent is '/config'.
|
|
|
|
An agent should reject an attempt to set this object
|
|
to a destination name that does not make sense for
|
|
this type of agent."
|
|
DEFVAL { "/os/primary" } -- public
|
|
::= { adAOSDownloadEntry 13 }
|
|
|
|
adAOSDownloadDestinationType OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
primary(1),
|
|
secondary(2),
|
|
config(3),
|
|
remote(4),
|
|
other(5)
|
|
}
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The destination of the download file.
|
|
The allowable destination names depend on the type
|
|
of agent being downloaded. In all cases, a
|
|
destination of 'primary(1)' or 'secondary(2)'
|
|
indicates that this is a download of the agent's
|
|
firmware image. The agent will use 'primary(1)'
|
|
as the default value for this object when the row
|
|
is created.
|
|
|
|
ICF router agents also allow a download of a config
|
|
file. Currently, the name of the config file on the
|
|
agent is 'config(3)'.
|
|
|
|
ICF router agents also allow a download of a
|
|
file to a remote server. A destination of 'remote(4)'
|
|
indicates that this is a download to a remote server.
|
|
|
|
An agent should reject an attempt to set this object
|
|
to a destination name that does not make sense for
|
|
this type of agent."
|
|
DEFVAL { 1 } -- public
|
|
::= { adAOSDownloadEntry 14 }
|
|
|
|
adAOSDownloadLogMaxSize OBJECT-TYPE
|
|
SYNTAX Integer32 (0..65535)
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The maximum number of the download log entries
|
|
supported by this agent. Note that 0 is a
|
|
legal value for this variable."
|
|
::= { adAOSDownload 2 }
|
|
|
|
adAOSDownloadLogSize OBJECT-TYPE
|
|
SYNTAX Gauge32 (0..65535)
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of download log entries currently in
|
|
the adAOSDownloadLogTable."
|
|
::= { adAOSDownload 3 }
|
|
|
|
adAOSDownloadLogTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF AdAOSDownloadLogEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A log of the adAOSDownloadSize most recent
|
|
download attempts to this device. The first entry
|
|
in the table is the oldest."
|
|
::= { adAOSDownload 4 }
|
|
|
|
adAOSDownloadLogEntry OBJECT-TYPE
|
|
SYNTAX AdAOSDownloadLogEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"An entry in the adAOSDownloadLogTable containing
|
|
information about a single download attempt."
|
|
INDEX { adAOSDlLogIndex }
|
|
::= { adAOSDownloadLogTable 1 }
|
|
|
|
AdAOSDownloadLogEntry ::=
|
|
SEQUENCE {
|
|
adAOSDlLogIndex Integer32,
|
|
adAOSDlLogOwnerAddress TAddress,
|
|
adAOSDlLogOwnerDomain TDomain,
|
|
adAOSDlLogTAddress TAddress,
|
|
adAOSDlLogTDomain TDomain,
|
|
adAOSDlLogFilename DisplayString,
|
|
adAOSDlLogResetType INTEGER,
|
|
adAOSDlLogErrorStatus INTEGER,
|
|
adAOSDlLogErrorText DisplayString
|
|
}
|
|
|
|
adAOSDlLogIndex OBJECT-TYPE
|
|
SYNTAX Integer32 (1..65535)
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The index of this entry in the download log
|
|
table. Index 1 will always contain the oldest
|
|
entry. If the table is full when a download
|
|
attempt is made, the new entry becomes the last
|
|
entry (adAOSDownloadLogMaxSize), and all earlier
|
|
entries are shifted down by one entry, removing
|
|
the old index 1."
|
|
::= { adAOSDownloadLogEntry 1 }
|
|
|
|
adAOSDlLogOwnerAddress OBJECT-TYPE
|
|
SYNTAX TAddress
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The transport address of the management station
|
|
that attempted to initiate a download of this
|
|
device, formatted according to the value of
|
|
adAOSDlLastOwnerDomain."
|
|
::= { adAOSDownloadLogEntry 2 }
|
|
|
|
adAOSDlLogOwnerDomain OBJECT-TYPE
|
|
SYNTAX TDomain
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The kind of transport service used by the
|
|
management station that attempted to initiate a
|
|
download of this device."
|
|
::= { adAOSDownloadLogEntry 3 }
|
|
|
|
adAOSDlLogTAddress OBJECT-TYPE
|
|
SYNTAX TAddress
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The transport address of the node from which this
|
|
device attempted to download firmware, formatted
|
|
according to the value of adAOSDlLastTDomain."
|
|
::= { adAOSDownloadLogEntry 4 }
|
|
|
|
adAOSDlLogTDomain OBJECT-TYPE
|
|
SYNTAX TDomain
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The kind of transport service which was used for
|
|
the attempt to download firmware to this device."
|
|
::= { adAOSDownloadLogEntry 5 }
|
|
|
|
adAOSDlLogFilename OBJECT-TYPE
|
|
SYNTAX DisplayString (SIZE(0..63))
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The filename from which this device attempted to
|
|
download firmware."
|
|
::= { adAOSDownloadLogEntry 6 }
|
|
|
|
adAOSDlLogResetType OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
noReset(1),
|
|
warmReset(2),
|
|
factoryReset(3)
|
|
}
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The type of reset requested to be performed
|
|
after completion of the firmware download
|
|
attempt."
|
|
::= { adAOSDownloadLogEntry 7 }
|
|
|
|
adAOSDlLogErrorStatus OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
fileNotFound(1),
|
|
accessViolation(2),
|
|
diskFull(3),
|
|
illegalOperation(4),
|
|
unknownTID(5),
|
|
fileExists(6),
|
|
noSuchUser(7),
|
|
notDefined(8),
|
|
corruptFile(9),
|
|
noServer(10),
|
|
tftpTimeout(11),
|
|
hardwareError(12),
|
|
success(13),
|
|
aborted(14)
|
|
}
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The result of the attempt to download firmware to
|
|
this device. The values are the same as the
|
|
corresponding values of adAOSDownloadErrorStatus."
|
|
::= { adAOSDownloadLogEntry 8 }
|
|
|
|
adAOSDlLogErrorText OBJECT-TYPE
|
|
SYNTAX DisplayString (SIZE (0..255))
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A textual description of the final error status
|
|
of the attempt to download firmware to this
|
|
device."
|
|
::= { adAOSDownloadLogEntry 9 }
|
|
|
|
|
|
-- conformance information
|
|
|
|
adAOSDownloadConformance
|
|
OBJECT IDENTIFIER ::= { adGenAOSConformance 3 }
|
|
|
|
adAOSDownloadCompliances
|
|
OBJECT IDENTIFIER ::= { adAOSDownloadConformance 1 }
|
|
adAOSDownloadGroups
|
|
OBJECT IDENTIFIER ::= { adAOSDownloadConformance 2 }
|
|
|
|
|
|
-- compliance statements
|
|
|
|
adAOSDownloadConfigCompliance MODULE-COMPLIANCE
|
|
STATUS current
|
|
DESCRIPTION
|
|
"New version of the compliance statement for
|
|
network downloadable devices that allows
|
|
for monitoring in-progress downloads and for
|
|
directing a download to different destinations
|
|
on the device."
|
|
MODULE
|
|
MANDATORY-GROUPS { adAOSDownloadConfigGroup }
|
|
|
|
GROUP adAOSDownloadLogGroup
|
|
DESCRIPTION
|
|
"This group should be implemented by devices
|
|
that are able to keep log of network download
|
|
attempts."
|
|
|
|
::= { adAOSDownloadCompliances 1 }
|
|
|
|
|
|
-- units of conformance
|
|
|
|
|
|
adAOSDownloadLogGroup OBJECT-GROUP
|
|
OBJECTS { adAOSDlLogIndex,
|
|
adAOSDlLogOwnerAddress,
|
|
adAOSDlLogOwnerDomain,
|
|
adAOSDlLogTAddress,
|
|
adAOSDlLogTDomain,
|
|
adAOSDlLogFilename,
|
|
adAOSDlLogResetType,
|
|
adAOSDlLogErrorStatus,
|
|
adAOSDlLogErrorText
|
|
}
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A collection of objects for maintaining a log of
|
|
network download attempts to ICF devices."
|
|
::= { adAOSDownloadGroups 1 }
|
|
|
|
adAOSDownloadConfigGroup OBJECT-GROUP
|
|
OBJECTS { adAOSDownloadIndex,
|
|
adAOSDownloadOwnerAddress,
|
|
adAOSDownloadOwnerDomain,
|
|
adAOSDownloadTAddress,
|
|
adAOSDownloadTDomain,
|
|
adAOSDownloadFilename,
|
|
adAOSDownloadResetType,
|
|
adAOSDownloadErrorStatus,
|
|
adAOSDownloadErrorText,
|
|
adAOSDownloadStatus,
|
|
adAOSDownloadPassesLeft,
|
|
adAOSDownloadOctetCount,
|
|
adAOSDownloadDestination,
|
|
adAOSDownloadLogMaxSize,
|
|
adAOSDownloadLogSize
|
|
}
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A collection of objects for controlling and
|
|
monitoring network download of device firmware to
|
|
ICF devices."
|
|
::= { adAOSDownloadGroups 2 }
|
|
|
|
|
|
END
|
|
|