CPQNTFTP-MIB DEFINITIONS ::= BEGIN -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- COMPAQ NPD FILE TRANSFER MIB -- -- Compaq Part Number 166441-000 -- -- February 2, 1998 -- -- Version 1.0 -- -- This is the Compaq Netelligent File Transfer MIB. Support of this -- MIB is not required by an agent unless the agent supports file -- transfers such as downloading an image. This MIB provides the following -- capabilities: -- * TFTP file transfers using SNMP as the control mechanism. -- -- Many of the settable objects in this MIB are "DURABLE". This means -- that when set, the value is stored in the agent's non-volatile memory. -- Durable data is retained during power cycles (outages) and across -- device resets. -- -- The term "management software" refers to any SNMP-based network -- management application. -- -- ASN1 Prefix: 1.3.6.1.4.1.232.121.9 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- IMPORTS enterprises, IpAddress FROM RFC1155-SMI DisplayString FROM RFC1213-MIB OBJECT-TYPE FROM RFC-1212 TRAP-TYPE FROM RFC-1215 CpqnRowStatus FROM CPQNUNIF-MIB; compaq OBJECT IDENTIFIER ::= { enterprises 232 } cpqnCommon OBJECT IDENTIFIER ::= { compaq 121 } cpqnTftpConfig OBJECT IDENTIFIER ::= { cpqnCommon 9 } -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- The following objects define agent-level commands and statuses for -- SNMP-initiated TFTP support. -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- cpqnTftpInitiate OBJECT-TYPE SYNTAX INTEGER { no-transfer-ipr(1), -- no transfer in progress transfer-in-progress(2), -- indicates a transfer is in progress initiate-transfer(3), -- command to initiate transfer(s) initiate-transfer-reset(4) -- command to initiate transfer(s) then -- reset/restart the agent after the -- transfer(s) is(are) complete } ACCESS read-write STATUS mandatory DESCRIPTION "This object is used to initiate the TFTP transfers configured in cpqnTftpTable. When setting this object, the only valid values are initiate-transfer(3) and initiate_transfer-reset(4). Attempts to set this object to other values are rejected with a Bad Value error. When this object is set to initiate-transfer(3), the agent does not reset (reboot) after the TFTP transfer(s) is(are) complete. Normal agent operation is resumed after the transfer(s). During the transfer(s), SNMP communication may or may not be available; consult the product-specific documentation. When this object is set to initiate-transfer-reset(4), the agent performs a reset (reboot) after the TFTP transfer(s) is(are) complete. SNMP communication may be lost at some point during the transfer/reset activity. SNMP communication resumes once the agent reset is complete. If the agent does not support the requested transfer mode, it rejects the set request with a Bad Value error. The agent returns transfer-in-progress(2) when this object is queried while a TFTP transfer is in progress. In order to avoid unexpected results, it is invalid to modify set any objects in cpqnTftpTable while this object is set to transfer-in-progress(2). The agent sets this object to no-transfer-ipr(1) after all TFTP transfers are completed." ::= { cpqnTftpConfig 1 } cpqnTftpCanDldAfterBoot OBJECT-TYPE SYNTAX INTEGER { can-dld-after-boot(1), cannot-dld-after-boot(2) } ACCESS read-only STATUS mandatory DESCRIPTION "The agent returns can-dld-after-boot(1) if it allows cpqnTftpTransferState to be set to download-afterboot(3). The purpose of this object is to inform the management station of the file transfer capabilities of the agent." ::= { cpqnTftpConfig 2 } cpqnTftpCanSendTrap OBJECT-TYPE SYNTAX INTEGER { can-send-tftp-trap(1), cannot-send-tftp-trap(2) } ACCESS read-only STATUS mandatory DESCRIPTION "The agent returns can-send-tftp-trap(1) if it allows cpqnTftpTrapEnableStatus to be set. If the agent returns cannot-send-tftp-trap(2), then sets on cpqnTftpTrapEnableStatus are rejected with a Bad Value error, and gets always return disabled(2). The purpose of this object is to inform the management station of the trap capabilities of the agent." ::= { cpqnTftpConfig 3 } cpqnTftpTrapEnableStatus OBJECT-TYPE SYNTAX INTEGER { enabled(1), -- send a trap if any file is received or -- sent by the agent disabled(2), -- never send traps for TFTP file transfers os-file-traps(3), -- send a trap if an OS or image file is -- received by the agent cfg-file-traps(4) -- send a trap if a configuration file is -- received by the agent } ACCESS read-write STATUS mandatory DESCRIPTION "DURABLE: This object is used to enable TFTP file transfer traps. If the agent does not support these traps, then it return a Bad Value error when this object is set. The cpqnTftpCanSendTrap object indicates whether or not the agent supports traps." ::= { cpqnTftpConfig 4 } -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- File Transfer Control Table -- -- This table contains MIB objects which control the downloading or -- uploading of files to and from the agent via TFTP. -- -- The user must specify the IP address of the TFTP server and the path -- to the filename to be uploaded/downloaded. Once this information has -- been set, the user may start the download by setting cpqnTftpInitiate -- to the appropriate value. The agent rejects attempts to configure -- unsupported file types or transfer modes with a Bad Value error. -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- cpqnTftpTable OBJECT-TYPE SYNTAX SEQUENCE OF CpqnTftpEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table containing the possible file types and names that can be downloaded/uploaded to a device." ::= { cpqnTftpConfig 5 } cpqnTftpEntry OBJECT-TYPE SYNTAX CpqnTftpEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A list of the TFTP file types, names, and statuses." INDEX { cpqnTftpFileType } ::= { cpqnTftpTable 1 } CpqnTftpEntry ::= SEQUENCE { cpqnTftpFileType INTEGER, -- read only cpqnTftpRowStatus CpqnRowStatus, -- read/write cpqnTftpPathname DisplayString, -- read/write cpqnTftpServerIp IpAddress, -- read/write cpqnNewFileVersion DisplayString, -- read/write cpqnTftpTransferState INTEGER, -- read/write cpqnTftpTransferLastErr INTEGER, -- read only cpqnTftpErrorText DisplayString -- read only } cpqnTftpFileType OBJECT-TYPE SYNTAX INTEGER { entire-file(1), -- a complete image, e.g. booter+OS+agent boot(2), -- a booter image run-time(3), -- the runtime/OS file sblock-ext(4), -- an S-block extension config(5), -- a configuration file agent(6), -- agent software code fddi-ulfw(7), -- FDDI uplink firmware atm-ulfw(8) -- ATM uplink firmware } ACCESS read-only STATUS mandatory DESCRIPTION "The type of download/upload file that this table entry configures. This object is used as an index into cpqnTftpTable. There is only one entry for each type of file. The agent for a specific product may not support all file types; consult the product-specific documentation for information on using this object." ::= { cpqnTftpEntry 1 } cpqnTftpRowStatus OBJECT-TYPE SYNTAX CpqnRowStatus ACCESS read-write STATUS mandatory DESCRIPTION "DURABLE: The status of this row entry. Entries are added to this table using 'row sets'. When an entry is added, this object must be set to row-valid(1). To delete an entry from this table, set this object for the entry to row-invalid(2). Row sets for new entries with a row status set to row-invalid(2) return a Bad Value error. Attempts to read invalid entries are rejected with a No Such error. This table is indexed by cpqnTftpFileType. If an attempt is made to set this object for an invalid cpqnTftpFileType value, then a Bad Value error is returned." ::= { cpqnTftpEntry 2 } cpqnTftpPathname OBJECT-TYPE SYNTAX DisplayString (SIZE (1..64)) ACCESS read-write STATUS mandatory DESCRIPTION "DURABLE: The fully-qualified path and filename (as recognized by the TFTP server) of the file to download or upload." ::= { cpqnTftpEntry 3 } cpqnTftpServerIp OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory DESCRIPTION "DURABLE: The IP address of the TFTP server." ::= { cpqnTftpEntry 4 } cpqnNewFileVersion OBJECT-TYPE SYNTAX DisplayString (SIZE (4..12)) ACCESS read-write STATUS mandatory DESCRIPTION "DURABLE: This object specifies the version of the file to be downloaded. The agent uses this value to validate the downloaded file. An agent may allow this object to be left blank, in which case validation of the file versions will not be done (used for testing images, forcing a file when a version is not known, etc. Refer to the product-specific documentation for details on using this object." ::= { cpqnTftpEntry 5 } cpqnTftpTransferState OBJECT-TYPE SYNTAX INTEGER { no-download-ipr(1), -- default value download(2), -- perform TFTP download immediately after -- cpqnTftpInitiate is set appropriately download-afterboot(3), -- perform TFTP download after cpqnTftpInitiate -- is set appropriately and the agent restarts upload-to-nms(4) -- perform TFTP upload (put) immediately after -- cpqnTftpInitiate is set appropriately } ACCESS read-write STATUS mandatory DESCRIPTION "DURABLE: This object configures this entry's type of TFTP transfer (download/upload) and when it occurs after cpqnTftpInitiate is set appropriately (immediately or after the next restart). Note that multiple cpqnTftpTable entries may enable TFTP transfers; the order in which the entries are processed is left to the agent. After the TFTP transfer has been completed (successfully or not), the agent sets this object back to no-download-ipr(1). If the agent is restarted before the transfer occurs, then this object's value is retained. Support for download-afterboot(3) and upload-to-nms(4) is optional. Attempts to set this object to an unsupported value are rejected with a Bad Value error. The cpqnTftpCanDldAfterBoot object indicates whether or not the agent supports download-afterboot(3). Refer to product-specific documentation for information on upload-to-nms(4)." ::= { cpqnTftpEntry 6 } cpqnTftpTransferLastErr OBJECT-TYPE SYNTAX INTEGER { no-error(1), -- normal return value transfer-in-progress(2), -- this entry's TFTP transfer is in progress download-failed(3), -- download failed due to generic error upload-failed(4), -- upload failed dur to generic error tftp-timeout(5), -- the TFTP transfer timed out route-not-found(6), -- there is no default route or the default -- route(s) is(are) invalid file-not-found(7), -- the requested file was not located -- (TFTP error 1) invalid-access(8), -- access violation (TFTP error 2) disk-full(9), -- disk full or allocation exceeded -- (TFTP error 3) illegal-tftp-op(10), -- illegal TFTP operation (TFTP error 4) unk-xfer-id(11), -- unknown transfer ID (TFTP error 5) file-exists(12), -- file already exists (TFTP error 6) no-such-user(13), -- no such user (TFTP error 7) invalid-version(14), -- file version does not match the -- cpqnNewFileVersion hardware-error(15) -- hardware error occurred, e.g., -- flash erase or flash program error } ACCESS read-only STATUS mandatory DESCRIPTION "DURABLE: This is the error status (if any) of the last upload or download that occurred for this entry." ::= { cpqnTftpEntry 7 } cpqnTftpErrorText OBJECT-TYPE SYNTAX DisplayString ACCESS read-only STATUS mandatory DESCRIPTION "DURABLE: This is a text message from the last TFTP transfer. When possible, the message is obtained directly from the most recent TFTP error packet. If there was not a TFTP error packet, then a suitable message is returned." ::= { cpqnTftpEntry 8 } -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- File Transfer Traps -- -- Support for these traps is optional. The cpqnTftpCanSendTrap object -- indicates whether or not the agent supports these traps. -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- cpqnTftpTransferInitiated TRAP-TYPE ENTERPRISE cpqnCommon VARIABLES { cpqnTftpFileType, cpqnTftpPathname, cpqnTftpTransferState } DESCRIPTION "This trap is sent whenever a SNMP-requested TFTP transaction is initiated, depending on the value of cpqnTftpTrapEnableStatus. For those cases where multiple files are downloaded, multiple traps are sent." ::= 1 cpqnTftpTransferCompleted TRAP-TYPE ENTERPRISE cpqnCommon VARIABLES { cpqnTftpFileType, cpqnTftpPathname, cpqnTftpTransferState, cpqnTftpTransferLastErr } DESCRIPTION "This trap is sent whenever a SNMP-requested TFTP transaction is completed, depending on the value of cpqnTftpTrapEnableStatus. For those cases where multiple files are downloaded, multiple traps are sent. NOTE: It may not be possible for an agent to send this trap. Support of this trap is optional." ::= 2 END