BadOpCodeException is used when the OPCODE is invalid
ConstructionException is thrown when one of the sgio.d constructors encountered an error and could not create the object.
IoctlFailException is used when the ioctl to the device fails
SCSICheckConditionException is used on a check condition
SCSIException is the base class for all scsi exceptions.
TruncatedBufferException is thrown when a datain buffer is too small to hold response data, and when the undersized buffer doesn't cause a check condition exception. This can happen with devices that do not perfectly match the scsi spec.