NetWorker ASC/ASCQ Error decode utility

A small but useful utility has been added to the EBS product suite (from I think version 7.0, maybe later) that allows you to translate ASC/ASCQ status codes into verbal messages without any documentation.
ASC Additional Sense Code
ASCQ Additional Sense Code Qualifier

Usually the descriptions of these information codes are exclusively available from the vendor specific manuals. However the guys @ EMC Legato engineer have been kind enough to supply the utility which prevents the to carry these documents with you any longer.

ascdcode is installed via the SUNWebsn (Enterprise Backup Storage Node) package and is located under /usr/sbin/nsr/ascdcode.

Using ascdcode is simple as you can see from the command line help:

# ascdcode
usage: ascdcode [ -o vendor id [ -p product id ] ] asc ascq

For example:

# ascdcode 0x04 0x83
ASC/ASCQ(0x04/0x83)
ADIC       : aisle power disabled, door could be open
BHTi       : not ready - door/ieport open
EXABYTE : The front door is open
OVERLAND: lun not ready - magazine door open
SPECTRA : door is open, robot disabled
TANDBERG: Front door is open
#

This information is only available for the hardware supported by EBS.

This information is stored in a series of text files found under the EBS directory /usr/sbin/nsr/lgtovendors.

{thinking out aloud} I guess there is nothing stopping a person from extending these tables for any other hardware just by copying and editing one of these text tables. However, this of course does not extend the supported hardware.

# ls /usr/sbin/nsr/lgtovendors
ADIC  BNCHMARK	HP	 OVERLAND  QUANTUM  SPECTRA
ATL   EXABYTE	IBM	 PLASMON   SEAGATE  STK
BHTi  FUJITSU	OEM_MAP  QUALSTAR  SONY     TANDBERG
#

Viewing one of the sample files we can see that they are self explaintory

# more /usr/sbin/lgtovendors/ADIC
#
# NetWorker
# 7.0.Build.322
# Legato Systems, Inc.
#
# ADIC ASC/ASCQ Error Codes
#
0x04, 0x83, aisle power disabled, door could  be open
0x04, 0x8d, offline
0x04, 0x90, library needs teaching
0x15, 0x80, robot dropped a cartridge
0x15, 0x81, robot could not pick a cartridge
0x15, 0x82, robot could not put a cartridge
   :
   :
0x83, 0x01, could not read a bar code due to scanner error
0x83, 0x03, cell status and barcode questionable
0x83, 0x04, drive not present
0x84, 0x00, firmware error
#