--
--
-- Copyright (c) 2003  Adaptec Inc.
--
-- Module Name:
--
--	aac-generic.mib
--
-- Abstract:
--
--	Defines the aac-generic SNMP interface.
--
-- Author:
--
--   FSA Apps Team
--
-- Revision History:
--
-- $Log: AdaptecArrayController.mib $
-- Revision \main\3  1999/11/17  14:41:31  stclair(stclair_snappy.mainline)
-- Major clean-up of the SNMP interface.  Added several new fields to support better adapter info and container stripe size.  Updated some device usage and container usage strings.  
-- 
-- Revision \main\2  1999/11/05  12:40:05  stclair(stclair_snappy.mainline)
-- More changes to support the addition of the container2device table required by HP.
-- 
-- Revision \main\1  1999/09/08  17:39:26  stclair(stclair_snappy.mainline)
-- 
-- Revision \main\14  1999/04/28  16:59:56  stclair(stclair_snappy.mainline)
-- Fold in changes required by the solaris MIB compiler.
-- 
-- Revision \main\rel_icestorm_bl07\2  1998/08/12  11:48:27  stclair(stclair_snap.is07)
-- Changing access type for new status field.
-- Revision \main\rel_icestorm_bl07\1  1998/07/31  10:37:51  stclair(stclair_snap.is07)
-- Snmp Changes.  Added adapter status reporting to the mib.
-- 
-- Revision \main\stclair_7_30_98\1  1998/07/31  10:25:37  stclair(stclair_snap.is07)
-- Added better status reporting to the mib.  Also roll in changes from Terry to allow mib to compile under netware.
-- 
-- Revision \main\12  1998/07/06  9:44:54  stclair(stclair_snap2.mainline)
-- Updating mib file so that it will compile using the netware mib compiler.
-- 
-- Revision 1.5  1998/01/14 21:24:30  stclair
-- Format change.
-- Revision 1.4  1998/01/08 20:03:36  stclair
-- Some format changes.
-- Revision 1.3  1997/12/18 16:56:44  stclair
-- Fixed a bug in channel count.  Should be an INTEGER.
-- Revision 1.2  1997/12/15 20:37:14  stclair
-- Fixed header.
--
--
	AdaptecArrayController-MIB DEFINITIONS ::= BEGIN

	IMPORTS
		enterprises
			FROM RFC1155-SMI
		OBJECT-TYPE
			FROM RFC-1212
		DisplayString
			FROM RFC1213-MIB;

		adaptec			OBJECT IDENTIFIER ::= { enterprises		795 }
		raidproducts	OBJECT IDENTIFIER ::= { adaptec			10 }
		aac				OBJECT IDENTIFIER ::= { raidproducts	1 }
		aac-generic		OBJECT IDENTIFIER ::= { aac				1 }

		-- AdaptecArrayController MIB

		adaptecArrayControllerSoftwareVersion OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Version information for the Adaptec Array Controller 
				Software Suite."
			::= {aac-generic 1}
--			VALUES
--				An arbitrary string with Adaptec defined information.
--				Example: "AAC SNMP Version: 2.1-5 (Build #3860)"

		adaptecArrayControllerAdapterNumber OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"The Number of Adaptec Array Controllers present in the system."
			::= {aac-generic 2}
--			VALUES
--				1..n	Number of Adaptec Array Controllers present in the system.

		adaptecArrayControllerAdapterTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerAdapterEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"A list of Adaptec Array Controller entries.  
				The number of entries is given by 
				adaptecArrayControllerAdapterNumber."
			::= {aac-generic 3}

		adaptecArrayControllerContainerTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerContainerEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"A list of Adaptec Array Controller Container
				Entries. There will one entry in this table for
				each container on the host."
			::= {aac-generic 4}

		adaptecArrayControllerDeviceTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerDeviceEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"A list of devices that are attached to 
				 Adaptec Array Controllers that are connected
				 to this host."
			::= {aac-generic 5}

		adaptecArrayControllerContainerToDeviceTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerContainerToDeviceEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"A table used to correlate physical devices
				 to containers."
			::= {aac-generic 6}


-- START OF ENCLOSURE TABLE DECLARATIONS

		adaptecArrayControllerEnclosureTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerEnclosureEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"A list of enclosures that are attached to
				 Adaptec Array Controllers on this host."
			::= {aac-generic 20}
		
		adaptecArrayControllerEnclosureFanTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerEnclosureFanEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"A list of enclosure fans and their status."
			::= {aac-generic 21}
				
		adaptecArrayControllerEnclosurePowerSupplyTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerEnclosurePowerSupplyEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"A list of enclosure power supplies and their status."
			::= {aac-generic 22}

		adaptecArrayControllerEnclosureDoorLockTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerEnclosureDoorLockEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"A list of enclosure door locks and their status."
			::= {aac-generic 23}

		adaptecArrayControllerEnclosureTemperatureSensorTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerEnclosureTemperatureSensorEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"A list of enclosure temperature sensors and their status."
			::= {aac-generic 24}

		adaptecArrayControllerEnclosureScsiIdTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerEnclosureScsiIdEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"A list of enclosure SCSI IDs by slot."
			::= {aac-generic 25}

		adaptecArrayControllerEnclosureDeviceInsertionTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerEnclosureDeviceInsertionEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"A list of enclosure device insertion counts by slot."
			::= {aac-generic 26}

		adaptecArrayControllerEnclosureSlotStatusTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerEnclosureSlotStatusEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"A list of enclosure statuses by slot."
			::= {aac-generic 27}

-- END OF ENCLOSURE TABLE DECLARATIONS


		adaptecArrayControllerAdapterExtensionTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerAdapterExtensionEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"An extension of adaptecArrayControllerAdapterTable."
			::= {aac-generic 28}

		adaptecArrayControllerContainerExtensionTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerContainerExtensionEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"An extension of adaptecArrayControllerContainerTable."
			::= {aac-generic 29}

		adaptecArrayControllerDeviceExtensionTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerDeviceExtensionEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"An extension of adaptecArrayControllerDeviceTable."
			::= {aac-generic 30}

 		adaptecArrayControllerContainerToHotSpareTable OBJECT-TYPE
			SYNTAX SEQUENCE OF AdaptecArrayControllerContainerToHotSpareEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"A table used to correlate hot spare devices
				 to containers."
			::= {aac-generic 31}
                    
                     
                     
	-- The adaptecArrayController Adapter Table.

		adaptecArrayControllerAdapterEntry OBJECT-TYPE
			SYNTAX AdaptecArrayControllerAdapterEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"Descriptive and Status Information for an 
				Adaptec Array Controller."
			INDEX  { adaptecArrayControllerAdapterIndex }
			::= {adaptecArrayControllerAdapterTable 1}

		AdaptecArrayControllerAdapterEntry ::=
			SEQUENCE {
				adaptecArrayControllerAdapterIndex
					INTEGER,
				adaptecArrayControllerAdapterDescription
					DisplayString,
				adaptecArrayControllerAdapterType
					DisplayString,
				adaptecArrayControllerAdapterVersion
					DisplayString,
				adaptecArrayControllerAdapterChannelCount
					INTEGER,
				adaptecArrayControllerAdapterStatus
					INTEGER,
				adaptecArrayControllerAdapterBiosVersion
					DisplayString,
				adaptecArrayControllerAdapterKernelVersion
					DisplayString,
				adaptecArrayControllerAdapterMonitorVersion
					DisplayString,
				adaptecArrayControllerAdapterHardwareVersion
					DisplayString,
				adaptecArrayControllerAdapterTotalMemory
					INTEGER,
				adaptecArrayControllerAdapterProgramMemory
					INTEGER,
				adaptecArrayControllerAdapterBufferMemory
					INTEGER

			}

		adaptecArrayControllerAdapterIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION 
				"A unique index into the
				adaptecArrayControllerAdapterTable.  This 
				ranges between 1 and the value of 
				adaptecArrayControllerAdapterNumber."
			::= {adaptecArrayControllerAdapterEntry 1}
--			VALUES
--				1..n	Index number starts with 1, increases by 1 for each row.

		adaptecArrayControllerAdapterDescription OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION 
				"The Adaptec Array Controller description for 
				this adapter."
			::= {adaptecArrayControllerAdapterEntry 2}
--			VALUES
--				An arbitrary string, customized by Adaptec per OEM.
--				Generic controller example: "AACn" (where n is the controller number).

		adaptecArrayControllerAdapterType OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION 
				"The model name of this Adaptec Array Controller."
			::= {adaptecArrayControllerAdapterEntry 3}
--			VALUES
--				An arbitrary string, customized by Adaptec per OEM.
--				Generic controller example: "AAC-364".				

		adaptecArrayControllerAdapterVersion OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION 
				"The hardware and software version string for 
				this Adaptec Array Controller."
			::= {adaptecArrayControllerAdapterEntry 4}
--			VALUES
--				An arbitrary string with full version information in Adaptec defined
--				format.
--				Example: "File System: 2.1-5 (Build #3860) Software: 2.2-0 (Build #3348)
--						  BIOS: 2.0-1 (Build #3348) Hardware: 1.0"

		adaptecArrayControllerAdapterChannelCount OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION 
				"The number of channels supported by this Adaptec Array Controller."
			::= {adaptecArrayControllerAdapterEntry 5}
--			VALUES
--				1..n	Number of channels present on this controller.

		adaptecArrayControllerAdapterStatus OBJECT-TYPE
			SYNTAX INTEGER { 
				other(1),
				unknown(2),
				ok(3),
				nonCritical(4),
				critical(5),
				nonRecoverable(6)
			}
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"The status of the controller.  This status
				 reflects the status of all containers and
				 devices connected to the controller."
			::= {adaptecArrayControllerAdapterEntry 6}
--			VALUES
--				1	Adapter in unexpected state.
--				2	Adapter in unknown state.
--				3	Adapter functioning properly.
--				4	Adapter in warning state.
--				5	Adapter in error state.
--				6	Adapter in fatal error state.

		adaptecArrayControllerAdapterBiosVersion OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION 
				"The BIOS software version."
			::= {adaptecArrayControllerAdapterEntry 7}
--			VALUES
--				An arbitrary string with BIOS version information in Adaptec defined
--				format.
--				Example: "BIOS Version: 2.0-1 (Build #3348)"

		adaptecArrayControllerAdapterKernelVersion OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION 
				"The kernel software version."
			::= {adaptecArrayControllerAdapterEntry 8}
--			VALUES
--				An arbitrary string with adapter kernel version information in Adaptec defined
--				format.
--				Example: "Kernel Version: 2.2-0 (Build #3348)"

		adaptecArrayControllerAdapterMonitorVersion OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION 
				"The monitor software version."
			::= {adaptecArrayControllerAdapterEntry 9}
--			VALUES
--				An arbitrary string with adapter monitor version information in Adaptec defined
--				format.
--				Example: "Monitor Version: 2.2-0 Alpha (Build #3348)"

		adaptecArrayControllerAdapterHardwareVersion OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION 
				"The hardware version of the controller."
			::= {adaptecArrayControllerAdapterEntry 10}
--			VALUES
--				An arbitrary string with adapter hardware version information in Adaptec defined
--				format.
--				Example: Hardware Version: 1.0"

		adaptecArrayControllerAdapterTotalMemory OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION 
				"The total amount of memory present in the controller expressed in bytes."
			::= {adaptecArrayControllerAdapterEntry 11}
--			VALUES
--				n	Number of memory bytes present in controller.

		adaptecArrayControllerAdapterProgramMemory OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION 
				"The total amount of program memory present in the controller expressed in bytes."
			::= {adaptecArrayControllerAdapterEntry 12}
--			VALUES
--				n	Number of memory bytes available in the controller for program memory.

		adaptecArrayControllerAdapterBufferMemory OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION 
				"The total amount of buffer memory present in the controller expressed in bytes."
			::= {adaptecArrayControllerAdapterEntry 13}
--			VALUES
--				n	Number of memory bytes available in the controller for buffer memory.


		-- The adaptecArrayController Container Table.  This table contains information
		-- about all adaptecArrayController Containers present in the system.

		adaptecArrayControllerContainerEntry OBJECT-TYPE
			SYNTAX AdaptecArrayControllerContainerEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"Descriptive and status information for containers
				 hosted by Adaptec Array Controller."
			INDEX  { adaptecArrayControllerContIndex }
			::= {adaptecArrayControllerContainerTable 1}

		AdaptecArrayControllerContainerEntry ::=
			SEQUENCE {
				adaptecArrayControllerContIndex
					INTEGER,
				adaptecArrayControllerContAdapterIndex
					INTEGER,
				adaptecArrayControllerContNumber
					INTEGER,
				adaptecArrayControllerContSize
					INTEGER,
				adaptecArrayControllerContMountPoint
					DisplayString,
				adaptecArrayControllerContType
					DisplayString,
				adaptecArrayControllerContUsage
					DisplayString,
				adaptecArrayControllerContStatus
					INTEGER,
				adaptecArrayControllerContStripeSize
					INTEGER
			}

		adaptecArrayControllerContIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"An internal index used to identify this container."
			::= {adaptecArrayControllerContainerEntry 1}
--			VALUES
--				1..n	Index number starts with 1, increases by 1 for each row.

		adaptecArrayControllerContAdapterIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"An index into the adaptecArrayControllerAdapterTable
			that specified the AAC Controller to which this container
			belongs."
			::= {adaptecArrayControllerContainerEntry 2}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerAdapterTable.

		adaptecArrayControllerContNumber OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"An AAC container ID."
			::= {adaptecArrayControllerContainerEntry 3}
--			VALUES
--				0..n-1	Zero-relative container number within the specified adapter.

		adaptecArrayControllerContSize OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"The size of the container in megabytes."
			::= {adaptecArrayControllerContainerEntry 4}
--			VALUES
--				n	Container size in megabytes.
				
		adaptecArrayControllerContMountPoint OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"A string representing drive letters and mount 
				points for the container."
			::= {adaptecArrayControllerContainerEntry 5}
--			VALUES
--				Operating system specific format string designating a mount point.
--				Examples include a drive letter for NT or a device special name for Unix.

		adaptecArrayControllerContType OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"A string representing the container type."
			::= {adaptecArrayControllerContainerEntry 6}
--			VALUES
--				One of the following strings:
--				"None"						This space is not in a container.
--				"Mirror"					This space is part of a mirror set.
--				"Stripe"					This space is part of a stripe set.
--				"Volume"					This space is part of a volume set.
--				"RAID 5"					This space is part of a RAID 5 set, with background scrubbing.
--				"FileArray Snap Shotted"	This container has a snapshot present.
--				"Snap Shot"					This container is a snapshot of another container.
--				"RAID 5 Zero"				This space is part of a RAID 5 set, zeroed but not scrubbed.
--				"RAID 4"					This space is part of a RAID 4 set, with background scrubbing.
--				"RAID 4 Zero"				This space is part of a RAID 4 set, zeroed but not scrubbed.
--				"RAID 10"					This space is part of a RAID 1/0 set (stripe set of mirror sets).
--				"RAID 0 0"					This space is part of a RAID 0/0 set (stripe set of stripe sets).
--				"Volume Of Mirrors"			This space is part of a volume set of mirrors.
--				"Morphing"					This space is currently morphing.
--				"Unknown"					This space is part of an unknown container.

		adaptecArrayControllerContUsage OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"A string representing the container's usage."
			::= {adaptecArrayControllerContainerEntry 7}
--			VALUES
--				One of the following strings:
--				"None"				Container is empty.
--				"Not Available"		Container is not available for use.
--				"Unknown"			Container has unknown contents.
--				"Dead SnapShot"		Snapshot read-only container is dead.
--				"NTFS"				Container has an NTFS file system on it.
--				"FAT"				Container has a FAT file system on it.
--				"HPFS"				Container has an HPFS file system on it.
--				"NetWare"			Container has a NetWare file system on it.

		adaptecArrayControllerContStatus OBJECT-TYPE
			SYNTAX INTEGER { 
				other(1),
				unknown(2),
				ok(3),
				nonCritical(4),
				critical(5),
				nonRecoverable(6)
			}
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"The current status of the container.  If a
				 container with a redundant container type is 
				 no longer redundant,  its status will be marked
				 as nonCritical.  If the container is no longer
				 on-line,  its status will be marked as critical."
			::= {adaptecArrayControllerContainerEntry 8}
--			VALUES
--				1	Container in unexpected state.
--				2	Container in unknown state.
--				3	Container functioning properly.
--				4	Container in warning state.
--				5	Container in error state.
--				6	Container in fatal error state.

		adaptecArrayControllerContStripeSize OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"The stripe or chunk size of the container in bytes."
			::= {adaptecArrayControllerContainerEntry 9}
--			VALUES
--				n	Stripe size of the container in bytes.

		
		-- The adaptecArrayController Device Table.
		-- This table contains information about every device attached
		-- to the adaptecArrayController system.

		adaptecArrayControllerDeviceEntry OBJECT-TYPE
			SYNTAX AdaptecArrayControllerDeviceEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"Descriptive and status information for devices
				 connected to Adaptec Array Controllers."
			INDEX  { adaptecArrayControllerDevIndex }
			::= {adaptecArrayControllerDeviceTable 1}

		AdaptecArrayControllerDeviceEntry ::=
			SEQUENCE {
				adaptecArrayControllerDevIndex
					INTEGER,
				adaptecArrayControllerDevAdapterIndex
					INTEGER,
				adaptecArrayControllerDevChannelId
					INTEGER,
				adaptecArrayControllerDevId
					INTEGER,
				adaptecArrayControllerDevLogicalNumber
					INTEGER,
				adaptecArrayControllerDevType
					INTEGER,
				adaptecArrayControllerDevVendor
					DisplayString,
				adaptecArrayControllerDevProduct
					DisplayString,
				adaptecArrayControllerDevRevision
					DisplayString,
				adaptecArrayControllerDevBlocks
					INTEGER,
				adaptecArrayControllerDevBytesPerBlock
					INTEGER,
				adaptecArrayControllerDevUsage
					DisplayString,
				adaptecArrayControllerDevStatus
					INTEGER
			}

		adaptecArrayControllerDevIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"An internally used identifier."
			::= {adaptecArrayControllerDeviceEntry 1}			
--			VALUES
--				1..n	Index number starts with 1, increases by 1 for each row.

		adaptecArrayControllerDevAdapterIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"An index into the adaptecArrayControllerAdapterTable
				that specified the AAC Controller to which this container
				belongs."
			::= {adaptecArrayControllerDeviceEntry 2}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerAdapterTable.

		adaptecArrayControllerDevChannelId OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"The channel that the device is connected to."
			::= {adaptecArrayControllerDeviceEntry 3}
--			VALUES
--				n	n is a zero-relative channel number on the specified adapter.

		adaptecArrayControllerDevId OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"The Device ID."
			::= {adaptecArrayControllerDeviceEntry 4}
--			VALUES
--				0..15	SCSI device ID for this device.

		adaptecArrayControllerDevLogicalNumber OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"The Logical Device ID."
			::= {adaptecArrayControllerDeviceEntry 5}
--			VALUES
--				0..7	SCSI Logical Unit ID for this device.

		adaptecArrayControllerDevType OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"The Device Type."
			::= {adaptecArrayControllerDeviceEntry 6}
--			VALUES
--				Standard SCSI device types as follows:
--				0	Direct access device (disk).
--				1	Sequential access device (tape).
--				2	Printer.
--				3	Processor.
--				4	Write Once.
--				5	CD-ROM.
--				6	Scanner.
--				7	Optical Memory.
--				8	Medium changer.
--				9	Communications.

		adaptecArrayControllerDevVendor OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"The Device Vendor."
			::= {adaptecArrayControllerDeviceEntry 7}
--			VALUES
--				Vendor string as obtained by SCSI Inquiry command.

		adaptecArrayControllerDevProduct OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"The Product Identifier."
			::= {adaptecArrayControllerDeviceEntry 8}
--			VALUES
--				Product identifier string as obtained by SCSI Inquiry command.

		adaptecArrayControllerDevRevision OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"The Product Revision."
			::= {adaptecArrayControllerDeviceEntry 9}
--			VALUES
--				Revision string as obtained by SCSI Inquiry command.

		adaptecArrayControllerDevBlocks OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"The Number of Blocks on the Device."
			::= {adaptecArrayControllerDeviceEntry 10}
--			VALUES
--				n	Number of blocks on device as obtained by SCSI Read Capacity command.

		adaptecArrayControllerDevBytesPerBlock OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"The Number of Bytes Per Block on the Device."
			::= {adaptecArrayControllerDeviceEntry 11}
--			VALUES
--				n	Block size in bytes as obtained by SCSI Read Capacity command.
	
		adaptecArrayControllerDevUsage OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"The manner of usage by the Adaptec Array Controller."
			::= {adaptecArrayControllerDeviceEntry 12}
--			VALUES
--				One of the following strings:
--				"Not in use"	No useful information on this device.
--				"Initialized"	Device is prepared for use with AAC containers.
--				"Native"		Device is prepared for use with DOS partitions.
--				"Offline"		Device was present at boot time, but has failed or been removed.
--				"Unowned"		Device is not prepared for use.
--				"Detached"		Not currently used.
--				"UNKNOWN"		Usage of this device is unknown.

		adaptecArrayControllerDevStatus OBJECT-TYPE
			SYNTAX INTEGER { 
				other(1),
				unknown(2),
				ok(3),
				nonCritical(4),
				critical(5),
				nonRecoverable(6)
			}
			ACCESS read-only
			STATUS  mandatory
			DESCRIPTION 
				"The status of the device."
			::= {adaptecArrayControllerDeviceEntry 13}
--			VALUES
--				1	Device in unexpected state.
--				2	Device in unknown state.
--				3	Device functioning properly.
--				4	Device in warning state.
--				5	Device in error state.
--				6	Device in fatal error state.


-- The container to device correlation table.

	adaptecArrayControllerContainerToDeviceEntry OBJECT-TYPE
		SYNTAX AdaptecArrayControllerContainerToDeviceEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"Each record of this type represents a row in a table
			 that is used to list the physical devices that are
			 used to make up a container.  Each row includes an index
			 into the container table to indicate the container that
			 is being described, an index into the device table to
			 show the device that is used by the container, and 
			 information about the size of the physical partition on
			 the device."
		INDEX {adaptecArrayControllerContainerToDeviceIndex}
		::= {adaptecArrayControllerContainerToDeviceTable 1}

		AdaptecArrayControllerContainerToDeviceEntry ::=
			SEQUENCE {
				adaptecArrayControllerContainerToDeviceIndex
					INTEGER,
				adaptecArrayControllerCDAdapterIndex
					INTEGER,
				adaptecArrayControllerContainerIndex
					INTEGER,
				adaptecArrayControllerDeviceIndex
					INTEGER,
				adaptecArrayControllerPartitionOffsetLSW
					INTEGER,
				adaptecArrayControllerPartitionOffsetMSW
					INTEGER,
				adaptecArrayControllerPartitionSizeLSW
					INTEGER,
				adaptecArrayControllerPartitionSizeMSW
					INTEGER
			}

		adaptecArrayControllerContainerToDeviceIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"A unique index into the 
				 adaptecArrayControllerContainerToDeviceTable that
				 can be used to identify each row in the table."
			::= {adaptecArrayControllerContainerToDeviceEntry 1}
--			VALUES
--				1..n	Index number starts with 1, increases by 1 for each row.

		adaptecArrayControllerCDAdapterIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"An index into the adaptecArrayControllerAdapterTable indicating
				 the controller hosting the container being described."
			::= {adaptecArrayControllerContainerToDeviceEntry 2}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerAdapterTable.

		adaptecArrayControllerContainerIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"An index into the adaptecArrayControllerContainerTable
				 indicating the container being described."
			::= {adaptecArrayControllerContainerToDeviceEntry 3}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerContainerTable.

		adaptecArrayControllerDeviceIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"An index into the adaptecArrayControllerDeviceTable
				 indicating the device on which a piece of the
				 container resides."
			::= {adaptecArrayControllerContainerToDeviceEntry 4}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerDeviceTable.

		adaptecArrayControllerPartitionOffsetLSW OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"The least significant 32 bits of the offset into the 
				 physical disk to the start of the partition that is
				 used by the referenced container."
			::= {adaptecArrayControllerContainerToDeviceEntry 5}
--			VALUES
--				n	Offset into disk to start of partition, least significant 32 bits.

		adaptecArrayControllerPartitionOffsetMSW OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"The most significant 32 bits of the offset into the 
				 physical disk to the start of the partition that is
				 used by the referenced container."
			::= {adaptecArrayControllerContainerToDeviceEntry 6}
--			VALUES
--				n	Offset into disk to start of partition, most significant 32 bits.

		adaptecArrayControllerPartitionSizeLSW OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"The least significant 32 bits of the size of
				 partition on the device used by the referenced
				 container."
			::= {adaptecArrayControllerContainerToDeviceEntry 7}
--			VALUES
--				n	Size of partition, least significant 32 bits.
				 
		adaptecArrayControllerPartitionSizeMSW OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"The most significant 32 bits of the size of
				 partition on the device used by the referenced
				 container."
			::= {adaptecArrayControllerContainerToDeviceEntry 8}
--			VALUES
--				n	Size of partition, most significant 32 bits


-- START OF ENCLOSURE TABLES

		-- The adaptecArrayController Enclosure Table.
		-- This table contains information about every enclosure attached
		-- to the adaptecArrayController system.

		adaptecArrayControllerEnclosureEntry OBJECT-TYPE
			SYNTAX AdaptecArrayControllerEnclosureEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"Descriptive and status information for enclosures
				 connected to Adaptec Array Controllers."
			INDEX  { adaptecArrayControllerEnclosureIndex }
			::= {adaptecArrayControllerEnclosureTable 1}

		AdaptecArrayControllerEnclosureEntry ::=
			SEQUENCE 
			{
				adaptecArrayControllerEnclosureIndex
					INTEGER,
				adaptecArrayControllerEnclosureAdapterIndex
					INTEGER,
				adaptecArrayControllerEnclosureProcessorId
					INTEGER,
				adaptecArrayControllerEnclosureType
					INTEGER,
				adaptecArrayControllerEnclosureNumberFans
					INTEGER,
				adaptecArrayControllerEnclosureNumberPowerSupplies
					INTEGER,
				adaptecArrayControllerEnclosureNumberSlots
					INTEGER,
				adaptecArrayControllerEnclosureDoorLock
					INTEGER,
				adaptecArrayControllerEnclosureNumberTemperatureSensors
					INTEGER,
				adaptecArrayControllerEnclosureSpeaker
					INTEGER,
				adaptecArrayControllerEnclosureBootTimeDiagnostic
					INTEGER,
				adaptecArrayControllerEnclosureVendor
					DisplayString,
				adaptecArrayControllerEnclosureProduct
					DisplayString,
				adaptecArrayControllerEnclosureRevision
					DisplayString,
				adaptecArrayControllerEnclosureIdLow
					INTEGER,
				adaptecArrayControllerEnclosureIdHigh
					INTEGER,
				adaptecArrayControllerEnclosureStandardRevision
					DisplayString,
				adaptecArrayControllerEnclosurePowerOnTime
					INTEGER,
				adaptecArrayControllerEnclosurePowerCycles
					INTEGER,
				adaptecArrayControllerEnclosureSpeakerStatus
					INTEGER,
				adaptecArrayControllerEnclosureOverTemperature
					INTEGER
			}

		adaptecArrayControllerEnclosureIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION 
				"Index into the Enclosure table."
			::= {adaptecArrayControllerEnclosureEntry 1}			
--			VALUES
--				1..n	Index number starts with 1, increases by 1 for each row.

		adaptecArrayControllerEnclosureAdapterIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION 
				"An index into the adaptecArrayControllerAdapterTable
				that specifies the AAC Controller to which this enclosure
				belongs."
			::= {adaptecArrayControllerEnclosureEntry 2}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerAdapterTable.

		adaptecArrayControllerEnclosureProcessorId OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"The enclosure processor ID assigned on a per
				adapter basis."
			::= {adaptecArrayControllerEnclosureEntry 3}
--			VALUES
--				n	Zero-relative number assigned to this enclosure on a per adapter basis.
		
		adaptecArrayControllerEnclosureType OBJECT-TYPE
			SYNTAX INTEGER 
			{
				other(1),
				unknown(2),
				decFault(3),
				saf-te(4),
				ses(5),
				aemi(6)
			}
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Standard adhered to for this enclosure."
			::= {adaptecArrayControllerEnclosureEntry 4}
--			VALUES
--				1	Enclosure type is determined, but not recognized.
--				2	Enclosure type not recognized.
--				3	Enclosure type is DEC FAULT.
--				4	Enclosure type is SAF-TE.
--				5	Enclosure type is SES.
--				6	Enclosure type is AEMI.
			
		adaptecArrayControllerEnclosureNumberFans OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Number of fans for this enclosure."
			::= {adaptecArrayControllerEnclosureEntry 5}
--			VALUES
--				n	Number of installed fans in this enclosure.

		adaptecArrayControllerEnclosureNumberPowerSupplies OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Number of power supplies for this enclosure."
			::= {adaptecArrayControllerEnclosureEntry 6}
--			VALUES
--				n	Number of installed power supplies in this enclosure.

		adaptecArrayControllerEnclosureNumberSlots OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Number of slots for this enclosure."
			::= {adaptecArrayControllerEnclosureEntry 7}
--			VALUES
--				n	Number of device slots supported by this enclosure.

		adaptecArrayControllerEnclosureDoorLock OBJECT-TYPE
			SYNTAX INTEGER
			{
				false(1),
				true(2)
			}
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Whether or not this enclosure has a host
				controllable door lock."
			::= {adaptecArrayControllerEnclosureEntry 8}
--			VALUES
--				1	No host controllable door lock available.
--				2	Host controllable door lock is available.

		adaptecArrayControllerEnclosureNumberTemperatureSensors OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Number of temperature sensors for this enclosure."
			::= {adaptecArrayControllerEnclosureEntry 9}
--			VALUES
--				n	Number of installed temperature sensors in this enclosure.

		adaptecArrayControllerEnclosureSpeaker OBJECT-TYPE
			SYNTAX INTEGER
			{
				false(1),
				true(2)
			}
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Whether or not this enclosure has a speaker
				installed."
			::= {adaptecArrayControllerEnclosureEntry 10}
--			VALUES
--				1	Enclosure does not have a speaker installed.
--				2	Enclosure does have a speaker installed.

		adaptecArrayControllerEnclosureBootTimeDiagnostic OBJECT-TYPE
			SYNTAX INTEGER
			{
				other(1),
				unknown(2),
				ok(3),
				nonCritical(4),
				critical(5),
				nonRecoverable(6)
			}
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Boot time diagnostic value for this enclosure."
			::= {adaptecArrayControllerEnclosureEntry 11}
--			VALUES
--				1	Enclosure in unexpected state.
--				2	Enclosure in unknown state.
--				3	Enclosure functioning properly.
--				4	Enclosure in warning state.
--				5	Enclosure in error state.
--				6	Enclosure in fatal error state.

		adaptecArrayControllerEnclosureVendor OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Vendor (from SCSI Inquiry) for this enclosure."
			::= {adaptecArrayControllerEnclosureEntry 12}
--			VALUES
--				Vendor string as obtained by SCSI Inquiry command.

		adaptecArrayControllerEnclosureProduct OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Product (from SCSI Inquiry) for this enclosure."
			::= {adaptecArrayControllerEnclosureEntry 13}
--			VALUES
--				Product string as obtained by SCSI Inquiry command.

		adaptecArrayControllerEnclosureRevision OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Revision (from SCSI Inquiry) for this enclosure."
			::= {adaptecArrayControllerEnclosureEntry 14}
--			VALUES
--				Revision string as obtained by SCSI Inquiry command.

		adaptecArrayControllerEnclosureIdLow OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Unique ID number for this enclosure (least
				significant bits) (from SCSI Inquiry)."
			::= {adaptecArrayControllerEnclosureEntry 15}
--			VALUES
--				n	Unique enclosure ID obtained from SCSI Inquiry (least significant 32 bits).
		
		adaptecArrayControllerEnclosureIdHigh OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Unique ID number for this enclosure (most
				significant bits) (from SCSI Inquiry)."
			::= {adaptecArrayControllerEnclosureEntry 16}
--			VALUES
--				n	Unique enclosure ID obtained from SCSI Inquiry (most significant 32 bits).
			
		adaptecArrayControllerEnclosureStandardRevision OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Revision of standard adhered to for this 
				enclosure (from SCSI Inquiry)."
			::= {adaptecArrayControllerEnclosureEntry 17}
--			VALUES
--				Standard revision string as obtained by SCSI Inquiry command.

		adaptecArrayControllerEnclosurePowerOnTime OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Total number of power on minutes for this 
				enclosure."
			::= {adaptecArrayControllerEnclosureEntry 18}
--			VALUES
--				n	Total number of minutes this enclosure has had its power on.

		adaptecArrayControllerEnclosurePowerCycles OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Total number of power cycles for this 
				enclosure."
			::= {adaptecArrayControllerEnclosureEntry 19}
--			VALUES
--				n	Total number of times this enclosure has had its power turned on.

		adaptecArrayControllerEnclosureSpeakerStatus OBJECT-TYPE
			SYNTAX INTEGER
			{
				off(1),
				on(2)
			}
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Speaker status (on/off only) for this enclosure."
			::= {adaptecArrayControllerEnclosureEntry 20}
--			VALUES
--				1	Speaker is off.
--				2	Speaker is on.

		adaptecArrayControllerEnclosureOverTemperature OBJECT-TYPE
			SYNTAX INTEGER
			{
				other(1),
				unknown(2),
				ok(3),
				nonCritical(4),
				critical(5),
				nonRecoverable(6)
			}
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Indicates whether internal temperature for this
				enclosure exceeds normal."
			::= {adaptecArrayControllerEnclosureEntry 21}
--			VALUES
--				1	Internal temperature in unexpected state.
--				2	Internal temperature in unknown state.
--				3	Internal temperature functioning properly.
--				4	Internal temperature in warning state.
--				5	Internal temperature in error state.
--				6	Internal temperature in fatal error state.


		-- The adaptecArrayController Enclosure Fan Table.
		-- This table contains information about enclosure fans.

		adaptecArrayControllerEnclosureFanEntry OBJECT-TYPE
			SYNTAX AdaptecArrayControllerEnclosureFanEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"Status information for enclosure fans."
			INDEX  { adaptecArrayControllerEnclosureFanIndex }
			::= {adaptecArrayControllerEnclosureFanTable 1}

		AdaptecArrayControllerEnclosureFanEntry ::=
			SEQUENCE 
			{
				adaptecArrayControllerEnclosureFanIndex
					INTEGER,
				adaptecArrayControllerEnclosureFanEnclosureIndex
					INTEGER,
				adaptecArrayControllerEnclosureFanStatus
					INTEGER
			}

		adaptecArrayControllerEnclosureFanIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Index into the enclosure fan table."
			::= {adaptecArrayControllerEnclosureFanEntry 1}
--			VALUES
--				1..n	Index number starts with 1, increases by 1 for each row.

		adaptecArrayControllerEnclosureFanEnclosureIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Index into the enclosure table specifying which
				enclosure contains this fan."
			::= {adaptecArrayControllerEnclosureFanEntry 2}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerEnclosureTable.

		adaptecArrayControllerEnclosureFanStatus OBJECT-TYPE
			SYNTAX INTEGER
			{
				other(1),
				unknown(2),
				ok(3),
				nonCritical(4),
				critical(5),
				nonRecoverable(6),
				notInstalled(7)
			}
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Status of this fan."
			::= {adaptecArrayControllerEnclosureFanEntry 3}
--			VALUES
--				1	Fan in unexpected state.
--				2	Fan in unknown state.
--				3	Fan functioning properly.
--				4	Fan in warning state.
--				5	Fan in error state.
--				6	Fan in fatal error state.
--				7	Fan is not installed.


		-- The adaptecArrayController Enclosure Power Supply Table.
		-- This table contains information about enclosure power supplies.

		adaptecArrayControllerEnclosurePowerSupplyEntry OBJECT-TYPE
			SYNTAX AdaptecArrayControllerEnclosurePowerSupplyEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"Status information for enclosure power supplies."
			INDEX  { adaptecArrayControllerEnclosurePowerSupplyIndex }
			::= {adaptecArrayControllerEnclosurePowerSupplyTable 1}

		AdaptecArrayControllerEnclosurePowerSupplyEntry ::=
			SEQUENCE 
			{
				adaptecArrayControllerEnclosurePowerSupplyIndex
					INTEGER,
				adaptecArrayControllerEnclosurePowerSupplyEnclosureIndex
					INTEGER,
				adaptecArrayControllerEnclosurePowerSupplyStatus
					INTEGER
			}

		adaptecArrayControllerEnclosurePowerSupplyIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Index into the enclosure power supply table."
			::= {adaptecArrayControllerEnclosurePowerSupplyEntry 1}
--			VALUES
--				1..n	Index number starts with 1, increases by 1 for each row.

		adaptecArrayControllerEnclosurePowerSupplyEnclosureIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Index into the enclosure table specifying which
				enclosure contains this power supply."
			::= {adaptecArrayControllerEnclosurePowerSupplyEntry 2}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerEnclosureTable.

		adaptecArrayControllerEnclosurePowerSupplyStatus OBJECT-TYPE
			SYNTAX INTEGER
			{
				unknown(1),
				operationalAndOn(2),
				operationalAndOff(3),
				onAndMalfunctioning(4),
				offAndMalfunctioning(5),
				installed(6),
				notInstalled(7)
			}
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Status of this power supply."
			::= {adaptecArrayControllerEnclosurePowerSupplyEntry 3}
--			VALUES
--				1	Power supply status unknown.
--				2	Power supply normal and on.
--				3	Power supply normal and off.
--				4	Power supply malfunctioning and on.
--				5	Power supply malfunctioning and off.
--				6	Power supply installed.
--				7	Power supply not installed.


		-- The adaptecArrayController Enclosure Door Lock Table.
		-- This table contains information about enclosure door locks.

		adaptecArrayControllerEnclosureDoorLockEntry OBJECT-TYPE
			SYNTAX AdaptecArrayControllerEnclosureDoorLockEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"Status information for enclosure door locks."
			INDEX  { adaptecArrayControllerEnclosureDoorLockIndex }
			::= {adaptecArrayControllerEnclosureDoorLockTable 1}

		AdaptecArrayControllerEnclosureDoorLockEntry ::=
			SEQUENCE 
			{
				adaptecArrayControllerEnclosureDoorLockIndex
					INTEGER,
				adaptecArrayControllerEnclosureDoorLockEnclosureIndex
					INTEGER,
				adaptecArrayControllerEnclosureDoorLockSlot
					INTEGER,
				adaptecArrayControllerEnclosureDoorLockStatus
					INTEGER
			}

		adaptecArrayControllerEnclosureDoorLockIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Index into the enclosure door lock table."
			::= {adaptecArrayControllerEnclosureDoorLockEntry 1}
--			VALUES
--				1..n	Index number starts with 1, increases by 1 for each row.

		adaptecArrayControllerEnclosureDoorLockEnclosureIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Index into the enclosure table specifying which
				enclosure contains this door lock."
			::= {adaptecArrayControllerEnclosureDoorLockEntry 2}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerEnclosureTable.

		adaptecArrayControllerEnclosureDoorLockSlot OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Specifies the slot number for this door lock."
			::= {adaptecArrayControllerEnclosureDoorLockEntry 3}
--			VALUES
--				n	Zero-relative slot number for this door lock
--					(currently always 0, one door lock supported per enclosure)

		adaptecArrayControllerEnclosureDoorLockStatus OBJECT-TYPE
			SYNTAX INTEGER
			{
				unknown(1),
				locked(2),
				unlocked(3)
			}
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Status of this door lock."
			::= {adaptecArrayControllerEnclosureDoorLockEntry 4}
--			VALUES
--				1	Door lock status unknown.
--				2	Door lock is locked.
--				3	Door lock is unlocked.


		-- The adaptecArrayController Enclosure Temperature Sensor Table.
		-- This table contains information about enclosure temperature sensors.

		adaptecArrayControllerEnclosureTemperatureSensorEntry OBJECT-TYPE
			SYNTAX AdaptecArrayControllerEnclosureTemperatureSensorEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"Status information for enclosure temperature sensors."
			INDEX  { adaptecArrayControllerEnclosureTemperatureSensorIndex }
			::= {adaptecArrayControllerEnclosureTemperatureSensorTable 1}

		AdaptecArrayControllerEnclosureTemperatureSensorEntry ::=
			SEQUENCE 
			{
				adaptecArrayControllerEnclosureTemperatureSensorIndex
					INTEGER,
				adaptecArrayControllerEnclosureTemperatureSensorEnclosureIndex
					INTEGER,
				adaptecArrayControllerEnclosureTemperatureSensorOverTemperature
					INTEGER,
				adaptecArrayControllerEnclosureTemperatureSensorDegrees
					INTEGER
			}

		adaptecArrayControllerEnclosureTemperatureSensorIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Index into the enclosure temperature sensor table."
			::= {adaptecArrayControllerEnclosureTemperatureSensorEntry 1}
--			VALUES
--				1..n	Index number starts with 1, increases by 1 for each row.

		adaptecArrayControllerEnclosureTemperatureSensorEnclosureIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Index into the enclosure table specifying which
				enclosure contains this temperature sensor."
			::= {adaptecArrayControllerEnclosureTemperatureSensorEntry 2}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerEnclosureTable.

		adaptecArrayControllerEnclosureTemperatureSensorOverTemperature OBJECT-TYPE
			SYNTAX INTEGER
			{
				other(1),
				unknown(2),
				ok(3),
				nonCritical(4),
				critical(5),
				nonRecoverable(6)
			}
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Specifies whether this temperature sensor has detected
				an over temperature condition."
			::= {adaptecArrayControllerEnclosureTemperatureSensorEntry 3}
--			VALUES
--				1	Temperature sensor in unexpected state.
--				2	Temperature sensor in unknown state.
--				3	Temperature sensor functioning properly.
--				4	Temperature sensor in warning state.
--				5	Temperature sensor in error state.
--				6	Temperature sensor in fatal error state.

		adaptecArrayControllerEnclosureTemperatureSensorDegrees OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Temperature registered by this sensor in degrees
				Fahrenheit."
			::= {adaptecArrayControllerEnclosureTemperatureSensorEntry 4}
--			VALUES
--				n	Currently measured temperature in degrees Fahrenheit.


		-- The adaptecArrayController Enclosure SCSI ID Table.
		-- This table contains information about enclosure SCSI IDs.

		adaptecArrayControllerEnclosureScsiIdEntry OBJECT-TYPE
			SYNTAX AdaptecArrayControllerEnclosureScsiIdEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"SCSI ID information for enclosure slots."
			INDEX  { adaptecArrayControllerEnclosureScsiIdIndex }
			::= {adaptecArrayControllerEnclosureScsiIdTable 1}

		AdaptecArrayControllerEnclosureScsiIdEntry ::=
			SEQUENCE 
			{
				adaptecArrayControllerEnclosureScsiIdIndex
					INTEGER,
				adaptecArrayControllerEnclosureScsiIdEnclosureIndex
					INTEGER,
				adaptecArrayControllerEnclosureScsiIdSlot
					INTEGER,
				adaptecArrayControllerEnclosureChannelId
					INTEGER,
				adaptecArrayControllerEnclosureScsiId
					INTEGER,
				adaptecArrayControllerEnclosureLunId
					INTEGER
			}

		adaptecArrayControllerEnclosureScsiIdIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Index into the enclosure SCSI ID table."
			::= {adaptecArrayControllerEnclosureScsiIdEntry 1}
--			VALUES
--				1..n	Index number starts with 1, increases by 1 for each row.

		adaptecArrayControllerEnclosureScsiIdEnclosureIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Index into the enclosure table specifying which
				enclosure contains this slot."
			::= {adaptecArrayControllerEnclosureScsiIdEntry 2}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerEnclosureTable.

		adaptecArrayControllerEnclosureScsiIdSlot OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Specifies the slot number for this SCSI ID."
			::= {adaptecArrayControllerEnclosureScsiIdEntry 3}
--			VALUES
--				n	Zero-relative slot number in this enclosure.

		adaptecArrayControllerEnclosureChannelId OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Channel ID of device in this slot."
			::= {adaptecArrayControllerEnclosureScsiIdEntry 4}
--			VALUES
--				n	Channel number (zero-relative on this adapter) of device in slot.

		adaptecArrayControllerEnclosureScsiId OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"SCSI ID of device in this slot."
			::= {adaptecArrayControllerEnclosureScsiIdEntry 5}
--			VALUES
--				0..15	SCSI ID of device in slot.
		
		adaptecArrayControllerEnclosureLunId OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Logical Unit ID of device in this slot."
			::= {adaptecArrayControllerEnclosureScsiIdEntry 6}
--			VALUES
--				0..7	SCSI Logical Unit ID of device in slot.


		-- The adaptecArrayController Device Insertion Table.
		-- This table contains information about enclosure device insertions.

		adaptecArrayControllerEnclosureDeviceInsertionEntry OBJECT-TYPE
			SYNTAX AdaptecArrayControllerEnclosureDeviceInsertionEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"Count information for enclosure device insertions."
			INDEX  { adaptecArrayControllerEnclosureDeviceInsertionIndex }
			::= {adaptecArrayControllerEnclosureDeviceInsertionTable 1}

		AdaptecArrayControllerEnclosureDeviceInsertionEntry ::=
			SEQUENCE 
			{
				adaptecArrayControllerEnclosureDeviceInsertionIndex
					INTEGER,
				adaptecArrayControllerEnclosureDeviceInsertionEnclosureIndex
					INTEGER,
				adaptecArrayControllerEnclosureDeviceInsertionSlot
					INTEGER,
				adaptecArrayControllerEnclosureDeviceInsertions
					INTEGER
			}

		adaptecArrayControllerEnclosureDeviceInsertionIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Index into the enclosure device insertion lock table."
			::= {adaptecArrayControllerEnclosureDeviceInsertionEntry 1}
--			VALUES
--				1..n	Index number starts with 1, increases by 1 for each row.

		adaptecArrayControllerEnclosureDeviceInsertionEnclosureIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Index into the enclosure table specifying which
				enclosure contains this slot."
			::= {adaptecArrayControllerEnclosureDeviceInsertionEntry 2}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerEnclosureTable.

		adaptecArrayControllerEnclosureDeviceInsertionSlot OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Specifies the slot number for this device insertion count."
			::= {adaptecArrayControllerEnclosureDeviceInsertionEntry 3}
--			VALUES
--				n	Zero-relative slot number in this enclosure.

		adaptecArrayControllerEnclosureDeviceInsertions OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Number of device insertions for this slot."
			::= {adaptecArrayControllerEnclosureDeviceInsertionEntry 4}
--			VALUES
--				n	Number of times a device has been inserted into this slot.


		-- The adaptecArrayController Enclosure Slot Status Table.
		-- This table contains information about enclosure slot status.

		adaptecArrayControllerEnclosureSlotStatusEntry OBJECT-TYPE
			SYNTAX AdaptecArrayControllerEnclosureSlotStatusEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"Status information for enclosure slots."
			INDEX  { adaptecArrayControllerEnclosureSlotStatusIndex }
			::= {adaptecArrayControllerEnclosureSlotStatusTable 1}

		AdaptecArrayControllerEnclosureSlotStatusEntry ::=
			SEQUENCE 
			{
				adaptecArrayControllerEnclosureSlotStatusIndex
					INTEGER,
				adaptecArrayControllerEnclosureSlotStatusEnclosureIndex
					INTEGER,
				adaptecArrayControllerEnclosureSlotStatusSlot
					INTEGER,
				adaptecArrayControllerEnclosureSlotStatus
					INTEGER
			}

		adaptecArrayControllerEnclosureSlotStatusIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Index into the enclosure slot status table."
			::= {adaptecArrayControllerEnclosureSlotStatusEntry 1}
--			VALUES
--				1..n	Index number starts with 1, increases by 1 for each row.

		adaptecArrayControllerEnclosureSlotStatusEnclosureIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Index into the enclosure table specifying which
				enclosure contains this slot."
			::= {adaptecArrayControllerEnclosureSlotStatusEntry 2}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerEnclosureTable.

		adaptecArrayControllerEnclosureSlotStatusSlot OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Specifies the slot number for this slot."
			::= {adaptecArrayControllerEnclosureSlotStatusEntry 3}
--			VALUES
--				n	Zero-relative slot number in this enclosure.

		adaptecArrayControllerEnclosureSlotStatus OBJECT-TYPE
			SYNTAX INTEGER
			-- Bitwise OR field - see FSAAPI definitions
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"Status of this slot."
			::= {adaptecArrayControllerEnclosureSlotStatusEntry 4}
--			VALUES
--				Bitwise OR of following flags:
--				NO_ERROR			0x0001		No outstanding error conditions on this device/slot.
--				DRIVE_FAULTY		0x0002		Device has exhibited some hardware or data fault.
--				DRIVER_REBUILDING	0x0004		Device is being rebuilt (failover operation).
--				FAILED_ARRAY		0x0008		Device is in an array with an error on any member device.
--				CRITICAL_ARRAY		0x0010		Device is in an array that is non fault-tolerant.
--				PARITY_CHECK		0x0020		Device is in an array which is undergoing a 
--													parity check operation (scrub operation).
--				PREDICAT_FAULT		0x0040		Drive is likely to fail in the near future .
--				UNCONFIGURED		0x0080		Slot does not contain a drive which is included in some 
--													array configuration.
--				HOT_SPARE			0x0100		Contains a good drive which is configured as a hot spare 
--													(failover drive) set with no error flag.
--				REBUILD_STOPPED		0x0200		Slot contains a drive which was rebuilding, but stopped 
--													abnormally or unsuccessfully.
--				DEVICE_INSERT_FLAG	0x01000000	0 - no device in this slot, 1 - device inserted
--				READY_INSERT_REMOVE	0x02000000	0 - not ready for insert or remove a device, 1 - ready 
--				OPERATION_FLAG		0x04000000	0 - slot not activated, 1 - slot activated - ready for 
--													SCSI access.

-- END OF ENCLOSURE TABLES


		adaptecArrayControllerAdapterExtensionEntry OBJECT-TYPE
			SYNTAX AdaptecArrayControllerAdapterExtensionEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"Additional descriptive and status information
				 for Adaptec Array Controllers.	 This table
				 augments adaptecArrayControllerAdapterTable.
				 There will be a row in this table for every
				 row in that table."
			INDEX  { adaptecArrayControllerAdapterIndex }
			::= {adaptecArrayControllerAdapterExtensionTable 1}

		AdaptecArrayControllerAdapterExtensionEntry ::=
			SEQUENCE {
				adaptecArrayControllerAdapterHighestChannelInUse
					INTEGER,
				adaptecArrayControllerAdapterHostBusType
					INTEGER,
				adaptecArrayControllerAdapterHostBusId
					INTEGER,
				adaptecArrayControllerAdapterHostBusSlotNumber
					INTEGER,
				adaptecArrayControllerAdapterTotalCacheMemory
					INTEGER
			}

		adaptecArrayControllerAdapterHighestChannelInUse OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS	mandatory
			DESCRIPTION
				"The highest channel/bus on the adapter that is in use."
			::= {adaptecArrayControllerAdapterExtensionEntry 1}
--			VALUES
--				n	n is a channel number.

		adaptecArrayControllerAdapterHostBusType OBJECT-TYPE
			SYNTAX INTEGER {
				other(1),
				unknown(2),
				pci(3),
				pci-32(4),
				pci-64(5),
				pci-x(6)
			}
			ACCESS read-only
			STATUS	mandatory
			DESCRIPTION
				"The type of host computer system bus the adapter is attached to."
			::= {adaptecArrayControllerAdapterExtensionEntry 2}
--			VALUES
--				1	Adapter is attached to an unexpected type of host bus
--				2	Adapter is attached to an unknown type of host bus
--				3	Adapter is attached to a PCI bus that is not one of the
--					ones below or width is unknown
--				4	Adapter is attached to a 32-bit PCI bus
--				5	Adapter is attached to a 64-bit PCI bus
--				6	Adapter is attached to a PCI-X bus

		adaptecArrayControllerAdapterHostBusId OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS	mandatory
			DESCRIPTION
				"The identifier of the host computer system
				bus the adapter is attached to."
			::= {adaptecArrayControllerAdapterExtensionEntry 3}
--			VALUES
--				n	n is a bus identifier.

		adaptecArrayControllerAdapterHostBusSlotNumber OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS	mandatory
			DESCRIPTION
				"The slot number of the host computer system
				bus the adapter is in."
			::= {adaptecArrayControllerAdapterExtensionEntry 4}
--			VALUES
--				n	n is a slot number.

		adaptecArrayControllerAdapterTotalCacheMemory OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS	mandatory
			DESCRIPTION
				"The total nonvolatile (cache) memory on the adapter."
			::= {adaptecArrayControllerAdapterExtensionEntry 5}
--			VALUES
--				n	Number of memory bytes available in the controller for cache memory.

		adaptecArrayControllerContainerExtensionEntry OBJECT-TYPE
			SYNTAX AdaptecArrayControllerContainerExtensionEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"Additional descriptive and status information
				 for Adaptec Array Containers.	This table
				 augments adaptecArrayControllerContainerTable.
				 There will be a row in this table for every
				 row in that table."
			INDEX  { adaptecArrayControllerContIndex }
			::= {adaptecArrayControllerContainerExtensionTable 1}

		AdaptecArrayControllerContainerExtensionEntry ::=
			SEQUENCE {
				adaptecArrayControllerContPercentComplete
					INTEGER,
				adaptecArrayControllerContTaskPriority
					INTEGER,
				adaptecArrayControllerContExtendedStatus
					INTEGER,
				adaptecArrayControllerContLabel
					DisplayString,
				adaptecArrayControllerContCacheStatus
					INTEGER,
				adaptecArrayControllerContTotalDedicatedHotSpares					
					INTEGER				
			}



		adaptecArrayControllerContPercentComplete OBJECT-TYPE
			SYNTAX INTEGER (0..100)
			ACCESS read-only
			STATUS	mandatory
			DESCRIPTION
				"The progress of long term tasks of the container."
			::= {adaptecArrayControllerContainerExtensionEntry 1}
--			VALUES
--				n	n is a percentage

		adaptecArrayControllerContTaskPriority OBJECT-TYPE
			SYNTAX INTEGER
			{
				other(1),
				unknown(2),
				low(3),
				medium(4),
				high(5)
			}
			ACCESS read-only
			STATUS	mandatory
			DESCRIPTION
				"The priority of long term tasks of the container."
			::= {adaptecArrayControllerContainerExtensionEntry 2}
--			VALUES
--				1	Container task priority is an unexpected value.
--				2	Container task priority is an unknown value.
--				3	Container task priority is low.
--				4	Container task priority is medium.
--				5	Container task priority is high.

		adaptecArrayControllerContExtendedStatus OBJECT-TYPE
			SYNTAX INTEGER {
				other(1),
				unknown(2),
				ok(3),
				nonCritical(4),
				critical(5),
				nonRecoverable(6),
				copying(7),
				highLevelFormatting(8),
				creating(9),
				reconfiguring(10),
				rebuilding(11),
				scrubbing(12),
				updatingSnapshot(13),
				zeroing(14)
			}
			ACCESS read-only
			STATUS	mandatory
			DESCRIPTION
				"The extended current status of the container."
			::= {adaptecArrayControllerContainerExtensionEntry 3}
--			VALUES
--				1	Container in unexpected state.
--				2	Container in unknown state.
--				3	Container functioning properly.
--				4	Container in warning state.
--				5	Container in error state.
--				6	Container in fatal error state.
--				7	Container is copying.
--				8	Container is high-level formatting.
--				9	Container is creating.
--				10	Container is reconfiguring.
--				11	Container is rebuilding.
--				12	Container is scrubbing.
--				13	Container is updating snapshot.
--				14	Container is zeroing.

		adaptecArrayControllerContLabel OBJECT-TYPE
			SYNTAX DisplayString
			ACCESS read-only
			STATUS	mandatory
			DESCRIPTION
				"The label of the container."
			::= {adaptecArrayControllerContainerExtensionEntry 4}
--			VALUES
--				User-defined label for the container or a
--				zero-length string if none is defined.

		adaptecArrayControllerContCacheStatus OBJECT-TYPE
			SYNTAX INTEGER {
				other(1),
				unknown(2),
				active-protected(3),
				active-not-protected(4),
				inactive(5)
			}
			ACCESS read-only
			STATUS	mandatory
			DESCRIPTION
				"The caching status for the container."
			::= {adaptecArrayControllerContainerExtensionEntry 5}
--			VALUES
--				1	Container cache status is unexpected.
--				2	Container cache status is unknown.
--				3	Container cache is active and battery protected.
--				4	Container cache is active but not battery protected.
--				5	Container cache is inactive. 
	
		adaptecArrayControllerContTotalDedicatedHotSpares OBJECT-TYPE
			SYNTAX INTEGER 
			ACCESS read-only
			STATUS	mandatory
			DESCRIPTION
				"The number of dedicated hot spares assigned to the container"
			::= {adaptecArrayControllerContainerExtensionEntry 6}
--			VALUES
--				n	The number of dedicated hot spares assigned to the container.       
       
       
       
		adaptecArrayControllerDeviceExtensionEntry OBJECT-TYPE
			SYNTAX AdaptecArrayControllerDeviceExtensionEntry
			ACCESS not-accessible
			STATUS mandatory
			DESCRIPTION
				"Additional descriptive and status information
				 for devices connected to Adaptec Array
				 Controllers.  This table augments
				 adaptecArrayControllerDeviceTable.  There will
				 be a row in this table for every row in that
				 table."
			INDEX  { adaptecArrayControllerDevIndex }
			::= {adaptecArrayControllerDeviceExtensionTable 1}

		AdaptecArrayControllerDeviceExtensionEntry ::=
			SEQUENCE {

				adaptecArrayControllerDevExtendedStatus
					INTEGER,
				adaptecArrayControllerDevSmartEnabled
					INTEGER,
				adaptecArrayControllerDevSmartStatus
					INTEGER,
				adaptecArrayControllerDevHotSpareType
					INTEGER
			}

		adaptecArrayControllerDevExtendedStatus OBJECT-TYPE
			SYNTAX INTEGER {
				other(1),
				unknown(2),
				ok(3),
				nonCritical(4),
				critical(5),
				nonRecoverable(6),
				exercising(7),
				verifying(8),
				verifyingWithReplace(9),
				zeroing(10)
			}
			ACCESS read-only
			STATUS	mandatory
			DESCRIPTION
				"The extended status of the device."
			::= {adaptecArrayControllerDeviceExtensionEntry 1}
--			VALUES
--				1	Device in unexpected state.
--				2	Device in unknown state.
--				3	Device functioning properly.
--				4	Device in warning state.
--				5	Device in error state.
--				6	Device in fatal error state.
--				7	exercising
--				8	verifying
--				9	verifying with replace
--				10	zeroing

		adaptecArrayControllerDevSmartEnabled OBJECT-TYPE
			SYNTAX INTEGER {
				other(1),
				unknown(2),
				disabled(3),
				enabled(4)
			}
			ACCESS read-only
			STATUS	mandatory
			DESCRIPTION
				"Whether or not S.M.A.R.T. is enabled on the device."
			::= {adaptecArrayControllerDeviceExtensionEntry 2}
--			VALUES
--				1	Device S.M.A.R.T. enable is in an unexpected state.
--				2	Device S.M.A.R.T. enable is unknown.
--				3	Device S.M.A.R.T. is enabled.
--				4	Device S.M.A.R.T. is disabled.

		adaptecArrayControllerDevSmartStatus OBJECT-TYPE
			SYNTAX INTEGER {
				other(1),
				unknown(2),
				ok(3),
				failurePrediction(4)
			}
			ACCESS read-only
			STATUS	mandatory
			DESCRIPTION
				"The status of S.M.A.R.T. on the device."
			::= {adaptecArrayControllerDeviceExtensionEntry 3}
--			VALUES
--				1	Device S.M.A.R.T. status is unexpected.
--				2	Device S.M.A.R.T. status is unknown.
--				3	Device S.M.A.R.T. status is OK.
--				4	Device S.M.A.R.T. is predicting failure. 


		adaptecArrayControllerDevHotSpareType OBJECT-TYPE
			SYNTAX INTEGER { 
				other(1),
				unknown(2), 
				not-hotspare(3),
				dedicated(4),
				global(5),
				dedicated-and-global(6)
			}
			ACCESS read-only
			STATUS	mandatory
			DESCRIPTION
				"The type of hotspare if any."
			::= {adaptecArrayControllerDeviceExtensionEntry 4}
--			VALUES
--				1	The device is another type of hotspare.
--				2	The type of hotspare can not be determined.
--				3	The device is not a hotspare.
--				4	The device is a dedicated hotspare to a container.
--				5	The device is a hotspare in the global failover space. 
--				6	The device is both dedicated to a container and is global.

 
 

-- The container to hot spare correlation table.

	adaptecArrayControllerContainerToHotSpareEntry OBJECT-TYPE
		SYNTAX AdaptecArrayControllerContainerToHotSpareEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"Each record of this type represents a row in a table
			 that is used to list the hot spare devices that are
			 dedicated to a container.  Each row includes an index
			 into the container table to indicate the container that
			 is being described, an index into the device table to
			 show the device that is used by the container."
			 
			 
		INDEX {adaptecArrayControllerContainerToHotSpareIndex}
		::= {adaptecArrayControllerContainerToHotSpareTable 1}

		AdaptecArrayControllerContainerToHotSpareEntry ::=
			SEQUENCE {
				adaptecArrayControllerContainerToHotSpareIndex
					INTEGER,
				adaptecArrayControllerHSAdapterIndex
					INTEGER,
				adaptecArrayControllerHSContainerIndex
					INTEGER,
				adaptecArrayControllerHSDeviceIndex
					INTEGER
			}

		adaptecArrayControllerContainerToHotSpareIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"A unique index into the 
				 adaptecArrayControllerContainerToHotSpareTable that
				 can be used to identify each row in the table."
			::= {adaptecArrayControllerContainerToHotSpareEntry 1}
--			VALUES
--				1..n	Index number starts with 1, increases by 1 for each row.

		adaptecArrayControllerHSAdapterIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"An index into the adaptecArrayControllerAdapterTable indicating
				 the controller hosting the container being described."
			::= {adaptecArrayControllerContainerToHotSpareEntry 2}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerAdapterTable.

		adaptecArrayControllerHSContainerIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"An index into the adaptecArrayControllerContainerTable
				 indicating the container being described."
			::= {adaptecArrayControllerContainerToHotSpareEntry 3}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerContainerTable.

		adaptecArrayControllerHSDeviceIndex OBJECT-TYPE
			SYNTAX INTEGER
			ACCESS read-only
			STATUS mandatory
			DESCRIPTION
				"An index into the adaptecArrayControllerDeviceTable
				 indicating the hot spare on which a piece of the
				 container resides."
			::= {adaptecArrayControllerContainerToHotSpareEntry 4}
--			VALUES
--				n	n is a valid index into the adaptecArrayControllerDeviceTable.

		
                  
               
               
               


 -- The remainder of the MIB is filled with trap definitions

		adaptecArrayControllerTraps	OBJECT IDENTIFIER ::= { aac-generic 9000 }
	
-- The following are the objects defined for traps

		aacControllerId OBJECT-TYPE
		SYNTAX DisplayString
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"Controller ID for this trap."
		::= { adaptecArrayControllerTraps 1 }
--		VALUES
--			n	The Adaptec Array Controller description for this adapter.  
--				Generic controller example: "AACn" (where n is the controller number).

		aacContainerId OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"Container ID for this trap."
		::= { adaptecArrayControllerTraps 2 }
--		VALUES
--			n	Zero-relative container number (index into adaptecArrayControllerContainerTable - 1).

		aacBusId OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"Bus ID for device referred to by this trap."
		::= { adaptecArrayControllerTraps 3 }
--		VALUES
--			n	Zero-relative bus ID (per adapter basis).

		aacScsiId OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"SCSI ID for device referred to by this trap."
		::= { adaptecArrayControllerTraps 4 }
--		VALUES
--			0..15	SCSI device ID (per bus basis).

		aacLunId OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"SCSI LUN ID for device referred to by this trap."
		::= { adaptecArrayControllerTraps 5 }
--		VALUES
--			0..7	SCSI Logical Unit ID (per SCSI device basis).

		aacEnclosureProcessorId OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"Enclosure processor ID for enclosure referred to by this trap."
		::= { adaptecArrayControllerTraps 6 }
--		VALUES
--			n	Zero-relative enclosure ID (per adapter basis).

		aacComponentUnitId OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"Component unit ID for enclosure referred to by this trap."
		::= { adaptecArrayControllerTraps 7 }
--		VALUES
--			Not currently meaningful.


-- Following are the actual traps generated.

-- This Trap is issued when a storage controller changes state.
			
aacDriveLetterChange TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"A Drive Letter Changed on controller $1 for container $2."
	--#TYPE "A Drive Letter Changed"
	--#SUMMARY "A Drive Letter Changed on controller %s for container %d."
	--#ARGUMENTS {0,1}
	--#SEVERITY INFORMATIONAL
	::= 1	

aacFailoverChange TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId
	}
	DESCRIPTION
		"A change in failover assignments occurred on controller $1."
	--#TYPE "A change in failover assignments occurred"
	--#SUMMARY "A change in failover assignments occurred on controller %s."
	--#ARGUMENTS {0}
	--#SEVERITY INFORMATIONAL
	::= 2	

aacContainerStateChange TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"A container changed its state on controller $1.  Container : $2."
	--#TYPE "A container changed its state"
	--#SUMMARY "A container changed its state on controller %s.  Container : %d."
	--#ARGUMENTS {0,1}
	--#SEVERITY MINOR
	::= 3	

aacFileSystemChange TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"A file system change has occurred on container $2 on controller $1."
	--#TYPE "A file system change has occurred"
	--#SUMMARY "A file system change has occurred on container %d on controller %s."
	--#ARGUMENTS {1,0}
	--#SEVERITY INFORMATIONAL
	::= 4	

aacGeneralContainerFailure TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"An unknown error occurred on container $2 on adapter $1."
	--#TYPE "An unknown error occurred on container"
	--#SUMMARY "An unknown error occurred on container %d on adapter %s."
	--#ARGUMENTS {1,0}
	--#SEVERITY MAJOR
	::= 6	

aacMirrorNotMirroring TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"The container $2 on controller $1 is no longer in the mirroring state."
	--#TYPE "Container no longer mirroring"
	--#SUMMARY "The container %d on controller %s is no longer in the mirroring state."
	--#ARGUMENTS {1,0}
	--#SEVERITY MAJOR
	::= 7	

aacMirrorFailureNoSpace TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"A failover operation for controller $1 container $2 failed because there was not enough space available on the failover device."
	--#TYPE "Not enough failover space for mirror"
	--#SUMMARY "A failover operation for controller %s container %d failed because there was not enough space available on the failover device."
	--#ARGUMENTS {0,1}
	--#SEVERITY CRITICAL
	::= 8	

aacMirrorFailureNoUnmirror TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"The container $2 on controller $1 could not be unmirrored."
	--#TYPE "Container could not be unmirrored"
	--#SUMMARY "The container %d on controller %s could not be unmirrored."
	--#ARGUMENTS {1,0}
	--#SEVERITY CRITICAL
	::= 9	

aacMirrorFailoverStarted TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"A mirror failover operation started on controller $1 for container $2."
	--#TYPE "Mirror failover started"
	--#SUMMARY "A mirror failover operation started on controller %s for container %d."
	--#ARGUMENTS {0,1}
	--#SEVERITY INFORMATIONAL
	::= 10	

aacMirrorFailoverFailed TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"A failover operation on controller $1 failed for container $2."
	--#TYPE "Mirror failover failed"
	--#SUMMARY "A failover operation on controller %s failed for container %d."
	--#ARGUMENTS {0,1}
	--#SEVERITY CRITICAL
	::= 11	

aacMirrorNoFailoverAssigned TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"There is no failover device assigned to container $2 on controller $1."
	--#TYPE "No failover for mirror"
	--#SUMMARY "There is no failover device assigned to container %d on controller %s."
	--#ARGUMENTS {1,0}
	--#SEVERITY MINOR
	::= 12	

aacMirrorDriveFailure TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"A drive that was part of the mirror set (container) $2 failed.  This occurred on controller $1."
	--#TYPE "Mirror drive failure"
	--#SUMMARY "A drive that was part of the mirror set (container) %d failed.  This occurred on controller %d."
	--#ARGUMENTS {1,0}
	--#SEVERITY CRITICAL
	::= 13	

aacRaidRebuildStart TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"A rebuild operation started on controller $1 for container $2."
	--#TYPE "Rebuild started"
	--#SUMMARY "A rebuild operation started on controller %s for container %d."
	--#ARGUMENTS {0,1}
	--#SEVERITY INFORMATIONAL
	::= 14	

aacRaidRebuildRestart TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"A rebuild operation was restarted on controller $1 for container $2."
	--#TYPE "Rebuild restarted"
	--#SUMMARY "A rebuild operation restarted on controller %s for container %d."
	--#ARGUMENTS {0,1}
	--#SEVERITY INFORMATIONAL
	::= 15	

aacRaidDriveFailure TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"A drive that was part of the RAID set (container) $2 failed.  This occurred on controller $1."
	--#TYPE "RAID Drive Failure"
	--#SUMMARY "A drive that was part of the RAID set (container) %d failed.  This occurred on controller %s."
	--#ARGUMENTS {0,1}
	--#SEVERITY CRITICAL
	::= 16	

aacRaidNoFailover TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"There is no failover device assigned to container $2 on controller $1."
	--#TYPE "No failover for RAID"
	--#SUMMARY "There is no failover device assigned to container %d on controller %s."
	--#ARGUMENTS {1,0}
	--#SEVERITY MINOR
	::= 17	

aacRaidNoSpace TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"A failover operation for controller $1 container $2 failed because there is not enough space available on the failover device."
	--#TYPE "Not enough failover space for RAID"
	--#SUMMARY "A failover operation for controller %s container %d failed because there was not enough space available on the failover device."
	--#ARGUMENTS {0,1}
	--#SEVERITY CRITICAL
	::= 18	

aacSnapshotContainerAlmostFull TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"The snapshot container $2 on controller $1 is almost full."
	--#TYPE "Snapshot almost full"
	--#SUMMARY "The snapshot container %d on controller %s is almost full."
	--#ARGUMENTS {1,0}
	--#SEVERITY MAJOR
	::= 19	

aacSnapshotContainerFull TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"The snapshot container $2 on controller $1 is full."
	--#TYPE "Snapshot full"
	--#SUMMARY "The snapshot container %d on controller %s is full."
	--#ARGUMENTS {1,0}
	--#SEVERITY CRITICAL
	::= 20	

aacRaidRebuildComplete TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"The rebuild operation on controller $1 for container $2 has completed."
	--#TYPE "Rebuild complete"
	--#SUMMARY "The rebuild operation on controller %s for container %d has completed."
	--#ARGUMENTS {0,1}
	--#SEVERITY INFORMATIONAL
	::= 21	

aacDeviceFailure TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacBusId,
		aacScsiId,
		aacLunId
	}
	DESCRIPTION
		"A device has failed.  Controller $1.  Bus $2. ID $3 LUN $4."
	--#TYPE "Device failure"
	--#SUMMARY "A device has failed.  Controller %s.  Bus %d. ID %d LUN %d."
	--#ARGUMENTS {0,1,2,3}
	--#SEVERITY CRITICAL
	::= 22	

aacControllerResume TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId
	}
	DESCRIPTION
		"The controller $1 resumed normal I/O operations."
	--#TYPE "Controller resume"
	--#SUMMARY "The controller %s resumed normal I/O operations."
	--#ARGUMENTS {0}
	--#SEVERITY INFORMATIONAL
	::= 23	

aacInterfaceUp TRAP-TYPE
	ENTERPRISE aac-generic
	DESCRIPTION
		"The AAC management interface is up."
	--#TYPE "Interface up"
	--#SUMMARY "The AAC management interface is up."
	--#ARGUMENTS {}
	--#SEVERITY INFORMATIONAL
	::= 24	

aacBatteryReconditionRequired TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId
	}
	DESCRIPTION
		"The controller $1 requires battery reconditioning."
	--#TYPE "Battery reconditioning required"
	--#SUMMARY "The controller %s requires battery reconditioning."
	--#ARGUMENTS {0}
	--#SEVERITY MAJOR
	::= 25	

aacEnclosureGeneralError TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacEnclosureProcessorId,
		aacComponentUnitId
	}
	DESCRIPTION
		"An enclosure connected to controller $1 has reported an error."
	--#TYPE "Enclosure general error"
	--#SUMMARY "An enclosure connected to controller %s has reported an error."
	--#ARGUMENTS {0}
	--#SEVERITY MAJOR
	::= 26	


aacEnclosureFanError TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacEnclosureProcessorId,
		aacComponentUnitId
	}
	DESCRIPTION
		"An enclosure connected to controller $1 has reported a fan failure."
	--#TYPE "Enclosure fan error"
	--#SUMMARY "An enclosure connected to controller %s has reported a fan failure."
	--#ARGUMENTS {0}
	--#SEVERITY MAJOR
	::= 27	

aacEnclosurePowerSupplyError TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacEnclosureProcessorId,
		aacComponentUnitId
	}
	DESCRIPTION
		"An enclosure connected to controller $1 has reported a power supply failure."
	--#TYPE "Enclosure power supply error"
	--#SUMMARY "An enclosure connected to controller %s has reported a power supply failure."
	--#ARGUMENTS {0}
	--#SEVERITY MAJOR
	::= 28	


aacEnclosureTempAbnormal TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacEnclosureProcessorId,
		aacComponentUnitId
	}
	DESCRIPTION
		"An enclosure connected to controller $1 has reported an abnormal temperature reading."
	--#TYPE "Enclosure temperature abnormal"
	--#SUMMARY "An enclosure connected to controller %s has reported an abnormal temperature reading."
	--#ARGUMENTS {0}
	--#SEVERITY MAJOR
	::= 29	


aacEnclosureTempOver TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacEnclosureProcessorId,
		aacComponentUnitId
	}
	DESCRIPTION
		"An enclosure connected to controller $1 has reported a temperature reading above the user threshold."
	--#TYPE "Enclosure temperature too high"
	--#SUMMARY "An enclosure connected to controller %s has reported a temperature reading above the user threshold."
	--#ARGUMENTS {0}
	--#SEVERITY CRITICAL
	::= 30	


aacBatteryDead TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId
	}
	DESCRIPTION
		"The battery connected to controller $1 is dead."
	--#TYPE "Battery dead"
	--#SUMMARY "The battery connected to controller %s is dead."
	--#ARGUMENTS {0}
	--#SEVERITY CRITICAL
	::= 31

aacBatteryImproving TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId
	}
	DESCRIPTION
		"The battery connected to controller $1 is improving."
	--#TYPE "Battery improving"
	--#SUMMARY "The battery connected to controller %s is improving."
	--#ARGUMENTS {0}
	--#SEVERITY INFORMATIONAL
	::= 32


aacBatteryDegrading TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId
	}
	DESCRIPTION
		"The battery connected to controller $1 has lost charge."
	--#TYPE "Battery degrading"
	--#SUMMARY "The battery connected to controller %s has lost charge."
	--#ARGUMENTS {0}
	--#SEVERITY MAJOR
	::= 33

aacBatteryGood TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId
	}
	DESCRIPTION
		"The controller $1 reports that its battery is good."
	--#TYPE "Battery good"
	--#SUMMARY "The controller %s reports that its battery is good."
	--#ARGUMENTS {0}
	--#SEVERITY INFORMATIONAL
	::= 34

aacControllerPaused TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId
	}
	DESCRIPTION
		"The controller $1 has been paused."
	--#TYPE "Controller paused"
	--#SUMMARY "The controller %s has been paused."
	--#ARGUMENTS {0}
	--#SEVERITY MINOR
	::= 35

aacContainerCreated TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"Container $2 has been created on controller $1."
	--#TYPE "Container created"
	--#SUMMARY "Container %d has been created on controller %s."
	--#ARGUMENTS {1,0}
	--#SEVERITY INFORMATIONAL
	::= 36	

aacContainerDeleted TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"Container $2 has been deleted on controller $1."
	--#TYPE "Container deleted"
	--#SUMMARY "Container %d has been deleted on controller %s."
	--#ARGUMENTS {1,0}
	--#SEVERITY INFORMATIONAL
	::= 37	

aacDeviceFailurePredictionThresholdExceeded TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacBusId,
		aacScsiId,
		aacLunId
	}
	DESCRIPTION
		"A device reported that its Failure Prediction Threshold had been exceeded.  Controller $1.  Bus $2. ID $3 LUN $4."
	--#TYPE "Device failure prediction threshold exceeded"
	--#SUMMARY "A device reported that its Failure Prediction Threshold had been exceeded.	Controller %s.	Bus %d. ID %d LUN %d."
	--#ARGUMENTS {0,1,2,3}
	--#SEVERITY MAJOR
	::= 38	

aacDeviceFailurePredictionTest TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacBusId,
		aacScsiId,
		aacLunId
	}
	DESCRIPTION
		"A Failure Prediction Threshold test occurred.  Controller $1.  Bus $2. ID $3. LUN $4."
	--#TYPE "Device failure prediction test"
	--#SUMMARY "A Failure Prediction Threshold test occurred.  Controller %s.  Bus %d. ID %d. LUN %d."
	--#ARGUMENTS {0,1,2,3}
	--#SEVERITY INFORMATIONAL
	::= 39	

aacDeviceWarning TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacBusId,
		aacScsiId,
		aacLunId
	}
	DESCRIPTION
		"A Device issued a warning.  Controller $1.  Bus $2. ID $3 LUN $4."
	--#TYPE "Device warning"
	--#SUMMARY "A Device issued a warning.	Controller %s.	Bus %d. ID %d LUN %d."
	--#ARGUMENTS {0,1,2,3}
	--#SEVERITY MAJOR
	::= 40	

aacDeviceTemperatureWarning TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacBusId,
		aacScsiId,
		aacLunId
	}
	DESCRIPTION
		"A Device issued a abnormal temperature warning.  Controller $1.  Bus $2. ID $3 LUN $4."
	--#TYPE "Device temperature warning"
	--#SUMMARY "A Device issued a abnormal temperature warning.  Controller %s.  Bus %d. ID %d LUN %d."
	--#ARGUMENTS {0,1,2,3}
	--#SEVERITY MAJOR
	::= 41	

aacDeviceDegradedWarning TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacBusId,
		aacScsiId,
		aacLunId
	}
	DESCRIPTION
		"A device reported that its status is degraded.  Controller $1.  Bus $2. ID $3 LUN $4."
	--#TYPE "Device degraded warning"
	--#SUMMARY "A device reported that its status is degraded.  Controller %s.  Bus %d. ID %d LUN %d."
	--#ARGUMENTS {0,1,2,3}
	--#SEVERITY MINOR
	::= 42	

aacDeviceFailurePredictionConfigurationChanged TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacBusId,
		aacScsiId,
		aacLunId
	}
	DESCRIPTION
		"The failure prediction configuration changed for a device.  Controller $1.  Bus $2. ID $3 LUN $4."
	--#TYPE "Device failure prediction configuration changed"
	--#SUMMARY "The failure prediction configuration changed for a device.	Controller %s.	Bus %d. ID %d LUN %d."
	--#ARGUMENTS {0,1,2,3}
	--#SEVERITY INFORMATIONAL
	::= 43  
		
aacGlobalHotSpareReplacedSuccess TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId
	}
	DESCRIPTION
		"A failover device has been replaced on controller $1."
	--#TYPE "Failover Replaced"
	--#SUMMARY "A failover device has been replaced on controller %s."
	--#ARGUMENTS {0}
	--#SEVERITY INFORMATIONAL
	::= 44	      

aacDedicatedHotSpareReplacedSuccess TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId
	}
	DESCRIPTION
		"A failover device has been replaced on container $2, controller $1."
	--#TYPE "Failover Replaced"
	--#SUMMARY "A failover device has been replaced on container %d, controller %s."
	--#ARGUMENTS {1,0}
	--#SEVERITY INFORMATIONAL
	::= 45

	
aacGlobalHotSpareReplacedTooSmall TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId			
	}
	DESCRIPTION
		"The failover device that was replaced on controller $1 is too small."
	--#TYPE "Failover Replaced"
	--#SUMMARY "The failover device that was replaced on controller %s is too small."
	--#ARGUMENTS {0}
	--#SEVERITY WARNING
	::= 46

aacDedicatedHotSpareReplacedTooSmall TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId	
	}
	DESCRIPTION
		"The failover device that was replaced on container $2, controller $1 is too small."

	--#TYPE "Failover Replaced"
	--#SUMMARY "The failover device that was replaced on container %d, controller %s is too small."
	--#ARGUMENTS {1,0}
	--#SEVERITY WARNING
	::= 47  
	
aacDedicatedHotSpareReplacedArrayNotExist TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId	
	}
	DESCRIPTION
		"The failover device has been replaced on container $2, controller $1. However, container $2 does not exist."
	--#TYPE "Failover Replaced"
	--#SUMMARY "The failover device has been replaced on container %d, controller %s. However, container %d does not exist."
	--#ARGUMENTS {1,0,1}
	--#SEVERITY WARNING
	::= 48  
	
aacBatteryTemperatureWarning TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId
	}
	DESCRIPTION
		"The battery connected to controller $1 has reported an over temperature warning."
	--#TYPE "Battery Temperature Warning"
	--#SUMMARY "The battery connected to controller %s has reported an over temperature warning."
	--#ARGUMENTS {0}
	--#SEVERITY WARNING
	::= 49
	
aacBatteryTemperatureCritical TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId
	}
	DESCRIPTION
		"The battery connected to controller $1, has reported that it is critically over temperature."
	--#TYPE "Battery Temperature Critical"
	--#SUMMARY "The battery connected to controller %s, has reported that it is critically over temperature."
	--#ARGUMENTS {0}
	--#SEVERITY CRITICAL	
	::= 50

aacBatteryTemperatureCriticalRecover TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId
	}
	DESCRIPTION
		"The battery connected to controller $1, has reported that it has recovered from a critical over temperature."
	--#TYPE "Battery Temperature Critical Recover"
	--#SUMMARY "The battery connected to controller %s, has reported that it has recovered from a critical over temperature."
	--#ARGUMENTS {0}
	--#SEVERITY INFORMATIONAL	
	::= 51

aacBatteryTemperatureNormal TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId
	}
	DESCRIPTION
		"The battery connected to controller $1, has returned to normal."
	--#TYPE "Battery Temperature Warning Recover"
	--#SUMMARY "The battery connected to controller %s, has returned to normal."
	--#ARGUMENTS {0}
	--#SEVERITY INFORMATIONAL	
	::= 52 

 
aacContainerMetadataUnknownError TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId	
	}
	DESCRIPTION
		"Container $2 has experienced an unknown metadata error on controller $1."
	--#TYPE "Container Metadata Unknown Error"
	--#SUMMARY "Container %d has experienced an unknown metadata error on controller %s."
	--#ARGUMENTS {1,0}
	--#SEVERITY CRITICAL
	::= 53  

aacContainerMetadataReadError TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId	
	}
	DESCRIPTION
		"Container $2 has experienced a metadata read error on controller $1."
	--#TYPE "Container Metadata Read Error"
	--#SUMMARY "Container %d has experienced a metadata read error on controller %s."
	--#ARGUMENTS {1,0}
	--#SEVERITY CRITICAL
	::= 54             
	
aacContainerMetadataCRCFailureError TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId	
	}
	DESCRIPTION
		"Container $2 has experienced a metadata CRC failure error on controller $1."
	--#TYPE "Container Metadata CRC Failure Error"
	--#SUMMARY "Container %d has experienced a metadata CRC failure error on controller %s."
	--#ARGUMENTS {1,0}
	--#SEVERITY CRITICAL
	::= 55
		   
aacContainerMiscompareError TRAP-TYPE
	ENTERPRISE aac-generic
	VARIABLES 
	{
		aacControllerId,
		aacContainerId	
	}
	DESCRIPTION
		"Container $2 has experienced a miscompare error on controller $1."
	--#TYPE "Container Miscompare Error"
	--#SUMMARY "Container %d has experienced a miscompare error on controller %s."
	--#ARGUMENTS {1,0}
	--#SEVERITY CRITICAL
	::= 56

		 
END

