text: #
  # PySNMP MIB module SCSI-MIB (http://snmplabs.com/pysmi)
  # ASN.1 source file:///Users/davwang4/Dev/mibs.snmplabs.com/asn1/SCSI-MIB
  # Produced by pysmi-0.3.4 at Wed May  1 15:01:22 2019
  # On host DAVWANG4-M-1475 platform Darwin version 18.5.0 by user davwang4
  # Using Python version 3.7.3 (default, Mar 27 2019, 09:23:15) 
  #
  Integer, ObjectIdentifier, OctetString = mibBuilder.importSymbols("ASN1", "Integer", "ObjectIdentifier", "OctetString")
  NamedValues, = mibBuilder.importSymbols("ASN1-ENUMERATION", "NamedValues")
  ConstraintsUnion, SingleValueConstraint, ValueSizeConstraint, ValueRangeConstraint, ConstraintsIntersection = mibBuilder.importSymbols("ASN1-REFINEMENT", "ConstraintsUnion", "SingleValueConstraint", "ValueSizeConstraint", "ValueRangeConstraint", "ConstraintsIntersection")
  SnmpAdminString, = mibBuilder.importSymbols("SNMP-FRAMEWORK-MIB", "SnmpAdminString")
  ObjectGroup, NotificationGroup, ModuleCompliance = mibBuilder.importSymbols("SNMPv2-CONF", "ObjectGroup", "NotificationGroup", "ModuleCompliance")
  Bits, iso, ObjectIdentity, Counter32, TimeTicks, IpAddress, Gauge32, Unsigned32, MibScalar, MibTable, MibTableRow, MibTableColumn, MibIdentifier, NotificationType, Integer32, Counter64, ModuleIdentity, mib_2 = mibBuilder.importSymbols("SNMPv2-SMI", "Bits", "iso", "ObjectIdentity", "Counter32", "TimeTicks", "IpAddress", "Gauge32", "Unsigned32", "MibScalar", "MibTable", "MibTableRow", "MibTableColumn", "MibIdentifier", "NotificationType", "Integer32", "Counter64", "ModuleIdentity", "mib-2")
  RowStatus, TimeStamp, StorageType, AutonomousType, DisplayString, RowPointer, TextualConvention, TruthValue = mibBuilder.importSymbols("SNMPv2-TC", "RowStatus", "TimeStamp", "StorageType", "AutonomousType", "DisplayString", "RowPointer", "TextualConvention", "TruthValue")
  scsiMIB = ModuleIdentity((1, 3, 6, 1, 2, 1, 139))
  scsiMIB.setRevisions(('2006-03-30 00:00',))
  
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      if mibBuilder.loadTexts: scsiMIB.setRevisionsDescriptions((' Initial version published as RFC 4455.',))
  if mibBuilder.loadTexts: scsiMIB.setLastUpdated('200603300000Z')
  if mibBuilder.loadTexts: scsiMIB.setOrganization('IETF')
  if mibBuilder.loadTexts: scsiMIB.setContactInfo(' Michele Hallak-Stamler Sanrad Intelligent Network 27 Habarzel Street Tel Aviv, Israel Phone: +972 3 7674809 E-mail: michele@sanrad.com Yaron Lederman Siliquent Technologies Ltd. 21 Etzel Street Ramat Gan, Israel Phone: +972 54 5308833 E-mail: yaronled@bezeqint.net Mark Bakke Postal: Cisco Systems, Inc 7900 International Drive, Suite 400 Bloomington, MN USA 55425 E-mail: mbakke@cisco.com Marjorie Krueger Postal: Hewlett-Packard 8000 Foothills Blvd. Roseville, CA 95747 E-mail: marjorie_krueger@hp.com Keith McCloghrie Cisco Systems, Inc. Postal: 170 West Tasman Drive San Jose, CA USA 95134 Phone: +1 408 526-5260 E-mail: kzm@cisco.com ')
  if mibBuilder.loadTexts: scsiMIB.setDescription('The SCSI MIB Module. Copyright (C) The Internet Society (2006). This version of this MIB module is part of RFC 4455; see the RFC itself for full legal notices.')
  class ScsiLUN(TextualConvention, OctetString):
      reference = 'SCSI Architecture Model-2 (SAM-2), ANSI INCITS 366-2003, T10 Project 1157-D, 12 September 2002 - Annex A [SAM2]'
      description = 'This textual convention represents a SCSI Logical Unit Number (LUN). The format of a LUN is documented in Tables A.2 and A.3 of SAM-2 [SAM2].'
      status = 'current'
      subtypeSpec = OctetString.subtypeSpec + ConstraintsUnion(ValueSizeConstraint(2, 2), ValueSizeConstraint(8, 8), )
  class ScsiIndexValue(TextualConvention, Unsigned32):
      description = 'An arbitrary integer value, greater than zero, for use as a unique index value.'
      status = 'current'
      displayHint = 'd'
      subtypeSpec = Unsigned32.subtypeSpec + ValueRangeConstraint(1, 4294967295)
  
  class ScsiPortIndexValueOrZero(TextualConvention, Unsigned32):
      description = 'This textual convention is an extension of the ScsiIndexValue convention. The latter defines a greater than zero value used to identify an index. This extension permits the additional value of zero and is applicable only to indices of SCSI port. Usage of the zero is object-specific and must therefore be defined as part of the description of any object that uses this syntax. Examples of the usage of zero might include situations where the index was unknown, or when none or all indices need to be referenced.'
      status = 'current'
      displayHint = 'd'
      subtypeSpec = Unsigned32.subtypeSpec + ValueRangeConstraint(0, 4294967295)
  
  class ScsiIndexValueOrZero(TextualConvention, Unsigned32):
      description = 'This textual convention is an extension of the ScsiIndexValue convention. The latter defines a greater than zero value used to identify an index. This extension permits the additional value of zero. Usage of the zero is object-specific and must therefore be defined as part of the description of any object that uses this syntax. Examples of the usage of zero might include situations where index was unknown, or when none or all indices need to be referenced.'
      status = 'current'
      displayHint = 'd'
      subtypeSpec = Unsigned32.subtypeSpec + ValueRangeConstraint(0, 4294967295)
  
  class ScsiIdentifier(TextualConvention, OctetString):
      reference = 'SCSI Architecture Model-2 (SAM-2), ANSI INCITS 366-2003, T10 Project 1157-D, 12 September 2002 - Annex A [SAM2]'
      description = 'This textual convention represents a generic SCSI port identifier. The format depends on the transport used and is documented in Tables A.2 and A.3 of SAM-2 [SAM2].'
      status = 'current'
      subtypeSpec = OctetString.subtypeSpec + ValueSizeConstraint(0, 262)
  
  class ScsiName(TextualConvention, OctetString):
      reference = 'SCSI Architecture Model-2 (SAM-2), ANSI INCITS 366-2003, T10 Project 1157-D, 12 September 2002 - Annex A [SAM2]'
      description = 'This textual convention represents the name of a SCSI initiator device, a SCSI target device, a SCSI initiator port or a SCSI target port. The format depends on the transport used and is documented in Tables A.4 and A.5 of SAM-2 [SAM2]. Every object defined using this syntax must define whether it is a) always used for a port, b) always used for a device, or c) the circumstances under which it is used for a port or device.'
      status = 'current'
      subtypeSpec = OctetString.subtypeSpec + ValueSizeConstraint(0, 262)
  
  class ScsiLuNameOrZero(TextualConvention, OctetString):
      reference = 'SCSI Architecture Model-2 (SAM-2), ANSI INCITS 366-2003, T10 Project 1157-D, 12 September 2002 - Annex A [SAM2]'
      description = 'This textual convention represents either the name of a SCSI logical unit or a zero-length string. Objects defined with this syntax must specify the meaning of the zero-length string. The format of the name of a LU is defined as: - a zero-length octet string or - a string of eight bytes.'
      status = 'current'
      subtypeSpec = OctetString.subtypeSpec + ConstraintsUnion(ValueSizeConstraint(0, 0), ValueSizeConstraint(8, 8), )
  class ScsiDeviceOrPort(TextualConvention, Integer32):
      description = 'This type specifies whether a particular configuration is applicable to a port or to a device.'
      status = 'current'
      subtypeSpec = Integer32.subtypeSpec + ConstraintsUnion(SingleValueConstraint(1, 2, 3))
      namedValues = NamedValues(("device", 1), ("port", 2), ("other", 3))
  
  class ScsiIdCodeSet(TextualConvention, Unsigned32):
      reference = 'ANSI - SCSI Primary Commands - 2 (SPC-2), ANSI INCITS 351-2001, 11 July 2001 Chapter 8: section 8.4.4, Vital Product Data Parameters [SPC2]'
      description = "This textual convention specifies the code set for the identifier contained in an Identification Descriptor returned in a logical unit's Device Identification Page, and is formatted as defined in T10 SPC-2 (see REFERENCE) Table 172 - Code Set"
      status = 'current'
      displayHint = 'd'
      subtypeSpec = Unsigned32.subtypeSpec + ValueRangeConstraint(0, 15)
  
  class ScsiIdAssociation(TextualConvention, Unsigned32):
      reference = 'ANSI - SCSI Primary Commands - 2 (SPC-2), ANSI INCITS 351-2001, 11 July 2001 Chapter 8: section 8.4.4, Vital Product Data Parameters [SPC2]'
      description = "This textual convention specifies what the identifier is associated with (e.g., with the addressed physical/logical device or with a particular port) for the identifier contained in an Identification Descriptor returned in a logical unit's Device Identification Page, and is formatted as defined in T10 SPC-2 (see REFERENCE) Table 173 - Association."
      status = 'current'
      displayHint = 'd'
      subtypeSpec = Unsigned32.subtypeSpec + ValueRangeConstraint(0, 3)
  
  class ScsiIdType(TextualConvention, Unsigned32):
      reference = 'ANSI - SCSI Primary Commands - 2 (SPC-2), ANSI INCITS 351-2001, 11 July 2001 Chapter 8: section 8.4.4, Vital Product Data Parameters [SPC2]'
      description = "This textual convention specifies the type for the identifier contained in an Identification Descriptor returned in a logical unit's Device Identification Page, and is formatted as defined in T10 SPC-2 (see REFERENCE) table 174 - Identifier Type."
      status = 'current'
      displayHint = 'd'
      subtypeSpec = Unsigned32.subtypeSpec + ValueRangeConstraint(0, 15)
  
  class ScsiIdValue(TextualConvention, OctetString):
      reference = 'ANSI - SCSI Primary Commands - 2 (SPC-2), ANSI INCITS 351-2001, 11 July 2001 Chapter 8: section 8.4.4, Vital Product Data Parameters [SPC2]'
      description = "This textual convention represents an identifier. The objects of type ScsiIdCodeSet, ScsiIdAssociation, ScsiIdType define together the format. The format is the same as contained in an Identification Descriptor returned in a logical unit's Device Identification Page, and is formatted as defined in T10 SPC-2 (see REFERENCE)."
      status = 'current'
      subtypeSpec = OctetString.subtypeSpec + ValueSizeConstraint(0, 255)
  
  class ScsiHrSWInstalledIndexOrZero(TextualConvention, Integer32):
      reference = 'hrSWInstalledTable is defined in the Host Resources MIB, [RFC2790].'
      description = "The index value for a software module's row in the Host Resources MIBs hrSWInstalledTable. A zero value indicates that no row in the hrSWInstalledTable is applicable."
      status = 'current'
      displayHint = 'd'
      subtypeSpec = Integer32.subtypeSpec + ValueRangeConstraint(0, 2147483647)
  
  scsiNotifications = MibIdentifier((1, 3, 6, 1, 2, 1, 139, 0))
  scsiAdmin = MibIdentifier((1, 3, 6, 1, 2, 1, 139, 1))
  scsiObjects = MibIdentifier((1, 3, 6, 1, 2, 1, 139, 2))
  scsiConformance = MibIdentifier((1, 3, 6, 1, 2, 1, 139, 3))
  scsiTransportTypes = MibIdentifier((1, 3, 6, 1, 2, 1, 139, 1, 1))
  scsiGeneral = MibIdentifier((1, 3, 6, 1, 2, 1, 139, 2, 1))
  scsiInitiatorDevice = MibIdentifier((1, 3, 6, 1, 2, 1, 139, 2, 2))
  scsiTargetDevice = MibIdentifier((1, 3, 6, 1, 2, 1, 139, 2, 3))
  scsiLogicalUnit = MibIdentifier((1, 3, 6, 1, 2, 1, 139, 2, 4))
  scsiTransportOther = ObjectIdentity((1, 3, 6, 1, 2, 1, 139, 1, 1, 1))
  if mibBuilder.loadTexts: scsiTransportOther.setStatus('current')
  if mibBuilder.loadTexts: scsiTransportOther.setDescription('This identity identifies a transport that has no identity; it might happen because the transport is unknown or might not have been defined when this MIB module was created.')
  scsiTransportSPI = ObjectIdentity((1, 3, 6, 1, 2, 1, 139, 1, 1, 2))
  if mibBuilder.loadTexts: scsiTransportSPI.setStatus('current')
  if mibBuilder.loadTexts: scsiTransportSPI.setDescription('This identity identifies a parallel SCSI transport.')
  if mibBuilder.loadTexts: scsiTransportSPI.setReference('T10 - SCSI Parallel Interface - 4 (SPI-4) - ANSI INCITS 362-2002 [SPI4]')
  scsiTransportFCP = ObjectIdentity((1, 3, 6, 1, 2, 1, 139, 1, 1, 3))
  if mibBuilder.loadTexts: scsiTransportFCP.setStatus('current')
  if mibBuilder.loadTexts: scsiTransportFCP.setDescription('This identity identifies a Fibre Channel Protocol for SCSI, Second Version.')
  if mibBuilder.loadTexts: scsiTransportFCP.setReference('T10 - SCSI Fibre Channel Protocol - 2 (FCP-2) - ANSI INCITS 350-2003 [FCP2]')
  scsiTransportSRP = ObjectIdentity((1, 3, 6, 1, 2, 1, 139, 1, 1, 4))
  if mibBuilder.loadTexts: scsiTransportSRP.setStatus('current')
  if mibBuilder.loadTexts: scsiTransportSRP.setDescription('This identity identifies a protocol for transporting SCSI over Remote Direct Memory Access (RDMA) interfaces, e.g., InfiniBand (tm).')
  if mibBuilder.loadTexts: scsiTransportSRP.setReference('T10 - SCSI RDMA Protocol (SRP) - ANSI INCITS 365-2002 [SRP].')
  scsiTransportISCSI = ObjectIdentity((1, 3, 6, 1, 2, 1, 139, 1, 1, 5))
  if mibBuilder.loadTexts: scsiTransportISCSI.setStatus('current')
  if mibBuilder.loadTexts: scsiTransportISCSI.setDescription('This identity identifies an iSCSI transport.')
  if mibBuilder.loadTexts: scsiTransportISCSI.setReference('IETF IPS WG - Internet Small Computer Systems Interface (iSCSI) [RFC3720] ')
  scsiTransportSBP = ObjectIdentity((1, 3, 6, 1, 2, 1, 139, 1, 1, 6))
  if mibBuilder.loadTexts: scsiTransportSBP.setStatus('current')
  if mibBuilder.loadTexts: scsiTransportSBP.setDescription('This identity identifies the Serial Bus Protocol 3.')
  if mibBuilder.loadTexts: scsiTransportSBP.setReference('T10 - Serial Bus Protocol 3 (SBP-3) - ANSI INCITS 375-2004 [SBP3].')
  scsiTransportSAS = ObjectIdentity((1, 3, 6, 1, 2, 1, 139, 1, 1, 7))
  if mibBuilder.loadTexts: scsiTransportSAS.setStatus('current')
  if mibBuilder.loadTexts: scsiTransportSAS.setDescription('This identity identifies the Serial Attach SCSI Protocol.')
  if mibBuilder.loadTexts: scsiTransportSAS.setReference('T10 - Serial Attached SCSI - 1.1 (SAS - 1.1) - #1601-D Rev-10 [SAS-1.1].')
  scsiInstanceTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 1, 1), )
  if mibBuilder.loadTexts: scsiInstanceTable.setStatus('current')
  if mibBuilder.loadTexts: scsiInstanceTable.setDescription('A list of SCSI instances present on the system. The SCSI instance is the top-level entity, to which everything else belongs. An SNMP agent could represent more than one instance if it represents either a stack of devices, or virtual partitions of a larger device, or a host running multiple SCSI implementations from different vendors.')
  scsiInstanceEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 1, 1, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"))
  if mibBuilder.loadTexts: scsiInstanceEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiInstanceEntry.setDescription('An entry (row) containing management information applicable to a particular SCSI instance.')
  scsiInstIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 1, 1, 1), ScsiIndexValue())
  if mibBuilder.loadTexts: scsiInstIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiInstIndex.setDescription('This object represents an arbitrary integer used to uniquely identify a particular SCSI instance.')
  scsiInstAlias = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 1, 1, 2), SnmpAdminString().subtype(subtypeSpec=ValueSizeConstraint(0, 79))).setMaxAccess("readwrite")
  if mibBuilder.loadTexts: scsiInstAlias.setStatus('current')
  if mibBuilder.loadTexts: scsiInstAlias.setDescription('This object represents an administrative string, configured by the administrator. It can be a zero-length string.')
  scsiInstSoftwareIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 1, 1, 3), ScsiHrSWInstalledIndexOrZero()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiInstSoftwareIndex.setReference('hrSWInstalledIndex is defined in the Host Resources MIB, [RFC2790].')
  if mibBuilder.loadTexts: scsiInstSoftwareIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiInstSoftwareIndex.setDescription("If this management instance corresponds to an installed software module, then this object's value is the value of the hrSWInstalledIndex of that module. If there is no correspondence to an installed software module (or no module that has an hrSWInstalledIndex value), then the value of this object is zero.")
  scsiInstVendorVersion = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 1, 1, 4), SnmpAdminString()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiInstVendorVersion.setStatus('current')
  if mibBuilder.loadTexts: scsiInstVendorVersion.setDescription('This object represents a text string set by the manufacturer describing the version of this instance. The format of this string is determined solely by the manufacturer and is for informational purposes only. It is unrelated to the SCSI specification version numbers.')
  scsiInstScsiNotificationsEnable = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 1, 1, 5), TruthValue().clone('true')).setMaxAccess("readwrite")
  if mibBuilder.loadTexts: scsiInstScsiNotificationsEnable.setStatus('current')
  if mibBuilder.loadTexts: scsiInstScsiNotificationsEnable.setDescription('This object indicates whether notifications defined in this MIB module will be generated.')
  scsiInstStorageType = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 1, 1, 6), StorageType().clone('nonVolatile')).setMaxAccess("readwrite")
  if mibBuilder.loadTexts: scsiInstStorageType.setStatus('current')
  if mibBuilder.loadTexts: scsiInstStorageType.setDescription("This object specifies the memory realization for this SCSI entity. Specifically, each row in the following tables: scsiIntrDevTable scsiDscTgtTable scsiAuthorizedIntrTable scsiLunMapTable has a StorageType as specified by the instance of this object that is INDEXed by the same value of scsiInstIndex. This value of this object is also used to indicate the persistence across reboots of writable values in its row of the scsiInstanceTable. Conceptual rows having the value 'permanent' need not allow write-access to any columnar objects in the row, nor to any object belonging to a table whose entry is INDEXed by the same value of scsiInstIndex.")
  scsiDeviceTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 1, 2), )
  if mibBuilder.loadTexts: scsiDeviceTable.setStatus('current')
  if mibBuilder.loadTexts: scsiDeviceTable.setDescription('A list of SCSI devices contained in each of the SCSI manageable instances that this agent is reporting.')
  scsiDeviceEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 1, 2, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"))
  if mibBuilder.loadTexts: scsiDeviceEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiDeviceEntry.setDescription('An entry (row) containing management information applicable to a particular SCSI device included in this SCSI manageable instance identifiable by the value of scsiInstIndex.')
  scsiDeviceIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 2, 1, 1), ScsiIndexValue())
  if mibBuilder.loadTexts: scsiDeviceIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiDeviceIndex.setDescription('This object is an arbitrary integer used to uniquely identify a particular device within a particular SCSI instance.')
  scsiDeviceAlias = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 2, 1, 2), SnmpAdminString().subtype(subtypeSpec=ValueSizeConstraint(0, 79))).setMaxAccess("readwrite")
  if mibBuilder.loadTexts: scsiDeviceAlias.setStatus('current')
  if mibBuilder.loadTexts: scsiDeviceAlias.setDescription('This object contains an administrative name for this device. If no name is assigned, the value of this object is the zero-length string. The StorageType of this object is specified by the instance of scsiInstStorageType that is INDEXed by the same value of scsiInstIndex.')
  scsiDeviceRole = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 2, 1, 3), Bits().clone(namedValues=NamedValues(("target", 0), ("initiator", 1)))).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiDeviceRole.setStatus('current')
  if mibBuilder.loadTexts: scsiDeviceRole.setDescription('This object determines whether this device is acting as a SCSI initiator device, or as a SCSI target device, or as both.')
  scsiDevicePortNumber = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 2, 1, 4), Unsigned32()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiDevicePortNumber.setStatus('current')
  if mibBuilder.loadTexts: scsiDevicePortNumber.setDescription('This object represents the number of ports contained in this device.')
  scsiPortTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 1, 3), )
  if mibBuilder.loadTexts: scsiPortTable.setStatus('current')
  if mibBuilder.loadTexts: scsiPortTable.setDescription('A list of SCSI ports for each SCSI device in each instance.')
  scsiPortEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 1, 3, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"), (0, "SCSI-MIB", "scsiPortIndex"))
  if mibBuilder.loadTexts: scsiPortEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiPortEntry.setDescription('An entry (row) containing management information applicable to a particular SCSI port of a particular SCSI device in a particular SCSI instance.')
  scsiPortIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 3, 1, 1), ScsiIndexValue())
  if mibBuilder.loadTexts: scsiPortIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiPortIndex.setDescription('An arbitrary integer used to uniquely identify a particular port of a given device within a particular SCSI instance.')
  scsiPortRole = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 3, 1, 2), Bits().clone(namedValues=NamedValues(("target", 0), ("initiator", 1)))).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiPortRole.setStatus('current')
  if mibBuilder.loadTexts: scsiPortRole.setDescription('This object indicates whether this port is acting as a SCSI initiator port, or as a SCSI target port or as both.')
  scsiPortTransportPtr = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 3, 1, 3), RowPointer()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiPortTransportPtr.setStatus('current')
  if mibBuilder.loadTexts: scsiPortTransportPtr.setDescription('This object is a pointer to the corresponding row in the scsiTransportTable. This row contains information on the transport such as transport type and port name.')
  scsiPortBusyStatuses = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 3, 1, 4), Counter32()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiPortBusyStatuses.setStatus('current')
  if mibBuilder.loadTexts: scsiPortBusyStatuses.setDescription('This object represents the number of port busy statuses sent or received by this port. Note: Initiator ports only receive busy status and SCSI target ports only send busy status. Discontinuities in the value of this counter can occur at re- initialization of the management system.')
  scsiTransportTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 1, 5), )
  if mibBuilder.loadTexts: scsiTransportTable.setStatus('current')
  if mibBuilder.loadTexts: scsiTransportTable.setDescription('This table contains the device transport-specific information for each transport connected to each device in scsiDeviceTable.')
  scsiTransportEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 1, 5, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"), (0, "SCSI-MIB", "scsiTransportIndex"))
  if mibBuilder.loadTexts: scsiTransportEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiTransportEntry.setDescription('An entry (row) containing parameters applicable to a transport used by a particular device of a particular SCSI manageable instance.')
  scsiTransportIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 5, 1, 1), ScsiIndexValue())
  if mibBuilder.loadTexts: scsiTransportIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiTransportIndex.setDescription('An arbitrary integer used to uniquely identify a particular transport within a given device within a particular SCSI instance.')
  scsiTransportType = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 5, 1, 2), AutonomousType()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiTransportType.setStatus('current')
  if mibBuilder.loadTexts: scsiTransportType.setDescription('This object identifies the transport type of this row of the transport table. For example, if this object has the value scsiTransportFCP, then the identified transport is FCP.')
  scsiTransportPointer = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 5, 1, 3), RowPointer()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiTransportPointer.setStatus('current')
  if mibBuilder.loadTexts: scsiTransportPointer.setDescription("This object represents a pointer to a conceptual row in a 'transport' MIB module allowing a manager to get useful information for the transport described by this entry. For example, if the transport of this device is iSCSI, this object will point to the iSCSI Instance of the iSCSI MIB module. If there is no MIB for this transport, this object has the value 0.0.")
  scsiTransportDevName = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 1, 5, 1, 4), ScsiName()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiTransportDevName.setStatus('current')
  if mibBuilder.loadTexts: scsiTransportDevName.setDescription('This object represents the name of this device in one of the format(s) appropriate for this type of transport.')
  scsiIntrDevTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 2, 1), )
  if mibBuilder.loadTexts: scsiIntrDevTable.setStatus('current')
  if mibBuilder.loadTexts: scsiIntrDevTable.setDescription('This table contains information for each local SCSI initiator device in each instance.')
  scsiIntrDevEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 2, 1, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"))
  if mibBuilder.loadTexts: scsiIntrDevEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiIntrDevEntry.setDescription('An entry (row) containing information applicable to a SCSI initiator device within a particular SCSI instance.')
  scsiIntrDevTgtAccessMode = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 1, 1, 1), Integer32().subtype(subtypeSpec=ConstraintsUnion(SingleValueConstraint(1, 2, 3))).clone(namedValues=NamedValues(("unknown", 1), ("autoEnable", 2), ("manualEnable", 3)))).setMaxAccess("readwrite")
  if mibBuilder.loadTexts: scsiIntrDevTgtAccessMode.setStatus('current')
  if mibBuilder.loadTexts: scsiIntrDevTgtAccessMode.setDescription('This object controls whether or not a discovered SCSI target device is immediately authorized: - autoEnable (2) means that when a SCSI initiator device discovers a SCSI target device, it can use it immediately. - manualEnable (3) means that the SCSI initiator device must wait for an operator to set scsiIntrDscTgtConfigured = true before it is authorized. The StorageType of this object is specified by the instance of scsiInstStorageType that is INDEXed by the same value of scsiInstIndex.')
  scsiIntrDevOutResets = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 1, 1, 2), Counter32()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiIntrDevOutResets.setReference('SCSI Architecture Model-2 (SAM-2), ANSI INCITS 366-2003, T10 Project 1157-D, 12 September 2002 Chapters 5.9.6 & 5.9.7 [SAM2]')
  if mibBuilder.loadTexts: scsiIntrDevOutResets.setStatus('current')
  if mibBuilder.loadTexts: scsiIntrDevOutResets.setDescription('This object represents the total number of times that this SCSI initiator device has issued - a LOGICAL UNIT RESET or TARGET RESET task management request, or - any other SCSI transport protocol-specific action or event that causes a Logical Unit Reset or a Hard Reset at one or more SCSI target ports ([SAM2] chapters 5.9.6, 5.9.7). Discontinuities in the value of this counter can occur at re- initialization of the management system.')
  scsiIntrPortTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 2, 2), )
  if mibBuilder.loadTexts: scsiIntrPortTable.setStatus('current')
  if mibBuilder.loadTexts: scsiIntrPortTable.setDescription('This table contains all the SCSI initiator ports for each local SCSI initiator or target/initiator devices in each SCSI instance.')
  scsiIntrPortEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 2, 2, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"), (0, "SCSI-MIB", "scsiPortIndex"))
  if mibBuilder.loadTexts: scsiIntrPortEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiIntrPortEntry.setDescription('An entry (row) containing information applicable to a particular SCSI initiator port of a particular SCSI device within a SCSI instance.')
  scsiIntrPortName = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 2, 1, 1), ScsiName()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiIntrPortName.setStatus('current')
  if mibBuilder.loadTexts: scsiIntrPortName.setDescription('This object represents the name of the port assigned for use by the SCSI protocol. The format will depend on the type of transport this port is using.')
  scsiIntrPortIdentifier = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 2, 1, 2), ScsiIdentifier()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiIntrPortIdentifier.setStatus('current')
  if mibBuilder.loadTexts: scsiIntrPortIdentifier.setDescription('This object represents the identifier of the port in one of the format(s) appropriate for the type of transport in use.')
  scsiIntrPortOutCommands = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 2, 1, 3), Counter32()).setUnits('commands').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiIntrPortOutCommands.setStatus('current')
  if mibBuilder.loadTexts: scsiIntrPortOutCommands.setDescription('This object represents the number of commands sent by this SCSI initiator port. Discontinuities in the value of this counter can occur at re- initialization of the management system.')
  scsiIntrPortWrittenMegaBytes = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 2, 1, 4), Counter32()).setUnits('Megabytes').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiIntrPortWrittenMegaBytes.setStatus('current')
  if mibBuilder.loadTexts: scsiIntrPortWrittenMegaBytes.setDescription('This object represents the amount of data in megabytes sent by this SCSI initiator port. Discontinuities in the value of this counter can occur at re- initialization of the management system.')
  scsiIntrPortReadMegaBytes = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 2, 1, 5), Counter32()).setUnits('Megabytes').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiIntrPortReadMegaBytes.setStatus('current')
  if mibBuilder.loadTexts: scsiIntrPortReadMegaBytes.setDescription('This object represents the amount of data in megabytes received by this SCSI initiator port. Discontinuities in the value of this counter can occur at re- initialization of the management system.')
  scsiIntrPortHSOutCommands = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 2, 1, 6), Counter64()).setUnits('commands').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiIntrPortHSOutCommands.setStatus('current')
  if mibBuilder.loadTexts: scsiIntrPortHSOutCommands.setDescription('This object represents the number of commands sent by this SCSI initiator port. This object provides support for systems that can quickly generate a large number of commands because they run at high speed. Discontinuities in the value of this counter can occur at re- initialization of the management system.')
  scsiRemoteTgtDev = MibIdentifier((1, 3, 6, 1, 2, 1, 139, 2, 2, 3))
  scsiDscTgtTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 1), )
  if mibBuilder.loadTexts: scsiDscTgtTable.setStatus('current')
  if mibBuilder.loadTexts: scsiDscTgtTable.setDescription('This table includes all the remote (not in the local system) SCSI target ports that are authorized to attach to each local SCSI initiator port of this SCSI instance.')
  scsiDscTgtEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 1, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"), (0, "SCSI-MIB", "scsiDscTgtIntrPortIndex"), (0, "SCSI-MIB", "scsiDscTgtIndex"))
  if mibBuilder.loadTexts: scsiDscTgtEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiDscTgtEntry.setDescription('Each entry (row) contains information about the SCSI target device or port to which this SCSI initiator port (or all SCSI initiator ports in the SCSI initiator entry indexed by scsiInstIndex, scsiDeviceIndex) will attempt to attach. The entry is either for all local ports (if scsiDscTgtIntrPortIndex is zero) or only for the specific SCSI initiator port identified by scsiDscTgtIntrPortIndex. Note that if an entry in this table is deleted, any corresponding entries in the scsiDscLunsTable must be deleted as well. The StorageType of a row in this table is specified by the instance of scsiInstStorageType that is INDEXed by the same value of scsiInstIndex.')
  scsiDscTgtIntrPortIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 1, 1, 1), ScsiPortIndexValueOrZero())
  if mibBuilder.loadTexts: scsiDscTgtIntrPortIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiDscTgtIntrPortIndex.setDescription('This object relates to a particular local device within a particular SCSI instance and specifies - the index of the local SCSI initiator port, - or zero, if this entry refers to the local device and therefore refers to all the local SCSI initiator ports.')
  scsiDscTgtIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 1, 1, 2), ScsiIndexValue())
  if mibBuilder.loadTexts: scsiDscTgtIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiDscTgtIndex.setDescription('This object is an arbitrary integer used to uniquely identify a particular SCSI target device either discovered by, or configured for use with, one or more ports scsiDscTgtName of a particular device within a particular SCSI instance.')
  scsiDscTgtDevOrPort = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 1, 1, 3), ScsiDeviceOrPort()).setMaxAccess("readcreate")
  if mibBuilder.loadTexts: scsiDscTgtDevOrPort.setStatus('current')
  if mibBuilder.loadTexts: scsiDscTgtDevOrPort.setDescription('This object indicates whether this entry describes a configured SCSI target device name (and applies to all ports on the identified SCSI target device) or an individual SCSI target port.')
  scsiDscTgtName = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 1, 1, 4), ScsiName()).setMaxAccess("readcreate")
  if mibBuilder.loadTexts: scsiDscTgtName.setStatus('current')
  if mibBuilder.loadTexts: scsiDscTgtName.setDescription('This object represents the name of this configured or discovered SCSI target device or port depending on the value of scsiDscTgtDevOrPort.')
  scsiDscTgtConfigured = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 1, 1, 5), TruthValue().clone('true')).setMaxAccess("readcreate")
  if mibBuilder.loadTexts: scsiDscTgtConfigured.setStatus('current')
  if mibBuilder.loadTexts: scsiDscTgtConfigured.setDescription('This object means -true(1): this entry has been configured by an administrator. -false(2): this entry has been added from a discovery mechanism (e.g., SendTargets, SLP, iSNS). An administrator can modify this value from false to true.')
  scsiDscTgtDiscovered = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 1, 1, 6), TruthValue()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiDscTgtDiscovered.setStatus('current')
  if mibBuilder.loadTexts: scsiDscTgtDiscovered.setDescription('This object means -true(1): this entry has been discovered by the SCSI instance as result of an automatic discovery process. -false(2):this entry has been added by manual configuration. This entry is read-only because an administrator cannot change it. Note that it is an implementation decision to determine how long to retain a row with configured=false, such as when the SCSI target device is no longer visible/accessible to the local SCSI initiator device.')
  scsiDscTgtInCommands = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 1, 1, 7), Counter32()).setUnits('commands').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiDscTgtInCommands.setStatus('current')
  if mibBuilder.loadTexts: scsiDscTgtInCommands.setDescription('This object represents the number of commands received from this SCSI target port or device. Discontinuities in the value of this counter can occur at re- initialization of the management system, and at other times as indicated by the value of scsiDscTgtLastCreation.')
  scsiDscTgtWrittenMegaBytes = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 1, 1, 8), Counter32()).setUnits('Megabytes').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiDscTgtWrittenMegaBytes.setStatus('current')
  if mibBuilder.loadTexts: scsiDscTgtWrittenMegaBytes.setDescription('This object represents the amount of megabytes of data sent as the result of WRITE commands to this SCSI target port or device. Discontinuities in the value of this counter can occur at re- initialization of the management system, and at other times as indicated by the value of scsiDscTgtLastCreation.')
  scsiDscTgtReadMegaBytes = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 1, 1, 9), Counter32()).setUnits('Megabytes').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiDscTgtReadMegaBytes.setStatus('current')
  if mibBuilder.loadTexts: scsiDscTgtReadMegaBytes.setDescription('This object represents the amount of megabytes received as the result of READ commands to this SCSI target port or device. Discontinuities in the value of this counter can occur at re- initialization of the management system, and at other times as indicated by the value of scsiDscTgtLastCreation.')
  scsiDscTgtHSInCommands = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 1, 1, 10), Counter64()).setUnits('commands').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiDscTgtHSInCommands.setStatus('current')
  if mibBuilder.loadTexts: scsiDscTgtHSInCommands.setDescription('This object represents the number of commands received by this SCSI target port or device. This object provides support for system that can quickly generate a large number of commands because they run at high speed. Discontinuities in the value of this counter can occur at re- initialization of the management system, and at other times as indicated by the value of scsiDscTgtLastCreation.')
  scsiDscTgtLastCreation = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 1, 1, 11), TimeStamp()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiDscTgtLastCreation.setStatus('current')
  if mibBuilder.loadTexts: scsiDscTgtLastCreation.setDescription('This object represents the value of sysUpTime when this row was created.')
  scsiDscTgtRowStatus = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 1, 1, 12), RowStatus()).setMaxAccess("readcreate")
  if mibBuilder.loadTexts: scsiDscTgtRowStatus.setStatus('current')
  if mibBuilder.loadTexts: scsiDscTgtRowStatus.setDescription("This object allows an administrator to configure dynamically a new entry in this table via SNMP or eventually delete it. An administrator is not allowed to delete an entry for which the value of the object scsiIntrDscTgtDiscovered is equal to true. Note that when an entry in this table is deleted, then any corresponding entries in the scsiDscLunsTable must also be automatically deleted. A newly created row cannot be made active until a value has been set for scsiDscTgtName. In this case, the value of the corresponding instance of the scsiDscTgtRowStatus column will stay 'notReady'. The RowStatus TC [RFC2579] requires that this DESCRIPTION clause states under which circumstances other objects in this row can be modified: The value of this object has no effect on whether other objects in this conceptual row can be modified.")
  scsiDscLunTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 2), )
  if mibBuilder.loadTexts: scsiDscLunTable.setStatus('current')
  if mibBuilder.loadTexts: scsiDscLunTable.setDescription('This table includes all the remote (not in the local system) logical unit numbers (LUNs) discovered via each local SCSI initiator port of each local device within a particular SCSI instance.')
  scsiDscLunEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 2, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"), (0, "SCSI-MIB", "scsiDscTgtIntrPortIndex"), (0, "SCSI-MIB", "scsiDscTgtIndex"), (0, "SCSI-MIB", "scsiDscLunIndex"))
  if mibBuilder.loadTexts: scsiDscLunEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiDscLunEntry.setDescription('An entry (row) represents a discovered LUN at a particular SCSI target device (scsiDscTgtIndex), where the LUN was discovered by a particular local SCSI initiator device within a particular SCSI instance, possibly via a particular local SCSI initiator port. Note that when an entry in the scsiDscTgtTable is deleted, all corresponding entries in this table should automatically be deleted.')
  scsiDscLunIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 2, 1, 1), ScsiIndexValue())
  if mibBuilder.loadTexts: scsiDscLunIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiDscLunIndex.setDescription('This object is an arbitrary integer used to uniquely identify a particular LUN discovered by a particular SCSI initiator port or a particular SCSI initiator device within a particular SCSI instance. Entries in the scsiDscLunIdTable are associated with a LUN by having the value of this object in their INDEX.')
  scsiDscLunLun = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 2, 1, 2), ScsiLUN()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiDscLunLun.setStatus('current')
  if mibBuilder.loadTexts: scsiDscLunLun.setDescription('This object contains the Logical Unit Number (LUN) of the discovered logical unit.')
  scsiDscLunIdTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 3), )
  if mibBuilder.loadTexts: scsiDscLunIdTable.setStatus('current')
  if mibBuilder.loadTexts: scsiDscLunIdTable.setDescription('This table includes all the known LU identifiers of the remote (not in the local system) logical units discovered via each local SCSI initiator port or device of this SCSI instance.')
  scsiDscLunIdEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 3, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"), (0, "SCSI-MIB", "scsiDscTgtIntrPortIndex"), (0, "SCSI-MIB", "scsiDscTgtIndex"), (0, "SCSI-MIB", "scsiDscLunIndex"), (0, "SCSI-MIB", "scsiDscLunIdIndex"))
  if mibBuilder.loadTexts: scsiDscLunIdEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiDscLunIdEntry.setDescription('An entry (row) represents the LU identifier of a discovered LUN at a particular SCSI target device (scsiDscTgtIndex), where the LUN was discovered by a particular local SCSI initiator device within a particular SCSI instance, possibly via a particular local SCSI initiator port.')
  scsiDscLunIdIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 3, 1, 1), ScsiIndexValue())
  if mibBuilder.loadTexts: scsiDscLunIdIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiDscLunIdIndex.setDescription('This object is an arbitrary integer used to uniquely identify a particular LUN identifier discovered by each SCSI initiator device or particular SCSI initiator port within a particular SCSI instance.')
  scsiDscLunIdCodeSet = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 3, 1, 2), ScsiIdCodeSet()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiDscLunIdCodeSet.setReference('ANSI - SCSI Primary Commands - 2 (SPC-2), ANSI INCITS 351-2001, 11 July 2001 Chapter 8: section 8.4.4, Vital Product Data Parameters [SPC2]')
  if mibBuilder.loadTexts: scsiDscLunIdCodeSet.setStatus('current')
  if mibBuilder.loadTexts: scsiDscLunIdCodeSet.setDescription("This object specifies the code set in use with this identifier. The value is represented in the same format as is contained in the identifier's Identification Descriptor within the logical unit's Device Identification Page.")
  scsiDscLunIdAssociation = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 3, 1, 3), ScsiIdAssociation()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiDscLunIdAssociation.setReference('ANSI - SCSI Primary Commands - 2 (SPC-2), ANSI INCITS 351-2001, 11 July 2001 Chapter 8: section 8.4.4, Vital Product Data Parameters [SPC2]')
  if mibBuilder.loadTexts: scsiDscLunIdAssociation.setStatus('current')
  if mibBuilder.loadTexts: scsiDscLunIdAssociation.setDescription("This object specifies what the identifier is associated with (e.g., with the addressed physical/logical device or with a particular port). The value is represented in the same format as is contained in the identifier's Identification Descriptor within the logical unit's Device Identification Page.")
  scsiDscLunIdType = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 3, 1, 4), ScsiIdType()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiDscLunIdType.setReference('ANSI - SCSI Primary Commands - 2 (SPC-2), ANSI INCITS 351-2001, 11 July 2001 Chapter 8: section 8.4.4, Vital Product Data Parameters [SPC2]')
  if mibBuilder.loadTexts: scsiDscLunIdType.setStatus('current')
  if mibBuilder.loadTexts: scsiDscLunIdType.setDescription("This object specifies the type of the identifier. The value is represented in the same format as is contained in the identifier's Identification Descriptor within the logical unit's Device Identification Page.")
  scsiDscLunIdValue = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 3, 1, 5), ScsiIdValue()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiDscLunIdValue.setReference('ANSI - SCSI Primary Commands - 2 (SPC-2), ANSI INCITS 351-2001, 11 July 2001 Chapter 8: section 8.4.4, Vital Product Data Parameters [SPC2]')
  if mibBuilder.loadTexts: scsiDscLunIdValue.setStatus('current')
  if mibBuilder.loadTexts: scsiDscLunIdValue.setDescription("This object represents the actual value of this identifier. The format is defined by the objects scsiDscLunIdCodeSet, scsiDscLunIdAssociation, scsiDscLunIdType. The value is represented in the same format as is contained in the identifier's Identification Descriptor within the logical unit's Device Identification Page.")
  scsiAttTgtPortTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 4), )
  if mibBuilder.loadTexts: scsiAttTgtPortTable.setStatus('current')
  if mibBuilder.loadTexts: scsiAttTgtPortTable.setDescription('This table includes all the remote (not in the local system) SCSI target ports that are currently attached to each local SCSI initiator port of this SCSI instance.')
  scsiAttTgtPortEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 4, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"), (0, "SCSI-MIB", "scsiPortIndex"), (0, "SCSI-MIB", "scsiAttTgtPortIndex"))
  if mibBuilder.loadTexts: scsiAttTgtPortEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiAttTgtPortEntry.setDescription('An entry (row) represents a remote SCSI target port (scsiAttTgtPortIndex) currently attached to a particular SCSI initiator port (scsiPortIndex) of a particular SCSI initiator device within a particular SCSI instance.')
  scsiAttTgtPortIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 4, 1, 1), ScsiIndexValue())
  if mibBuilder.loadTexts: scsiAttTgtPortIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiAttTgtPortIndex.setDescription('An arbitrary integer used to uniquely identify a particular SCSI target currently attached to a particular SCSI initiator port of a particular SCSI initiator device within a particular SCSI instance.')
  scsiAttTgtPortDscTgtIdx = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 4, 1, 2), ScsiIndexValueOrZero()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiAttTgtPortDscTgtIdx.setStatus('current')
  if mibBuilder.loadTexts: scsiAttTgtPortDscTgtIdx.setDescription('This object contains the value of the scsiDscTgtIntrPortIndex index variable for the row in the scsiDscTgtTable representing this currently attached SCSI target port. If the currently attached SCSI target port is not represented in the scsiDscTgtTable, then the value of this object is zero.')
  scsiAttTgtPortName = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 4, 1, 3), ScsiName()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiAttTgtPortName.setStatus('current')
  if mibBuilder.loadTexts: scsiAttTgtPortName.setDescription('This object contains the name of the attached SCSI target port.')
  scsiAttTgtPortIdentifier = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 2, 3, 4, 1, 4), ScsiIdentifier()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiAttTgtPortIdentifier.setStatus('current')
  if mibBuilder.loadTexts: scsiAttTgtPortIdentifier.setDescription('This object contains the identifier of the attached SCSI target port.')
  scsiTgtDevTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 3, 1), )
  if mibBuilder.loadTexts: scsiTgtDevTable.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtDevTable.setDescription('This table contains information about each local SCSI target device.')
  scsiTgtDevEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 3, 1, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"))
  if mibBuilder.loadTexts: scsiTgtDevEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtDevEntry.setDescription('An entry (row) containing information applicable to a particular local SCSI target device within a particular SCSI instance.')
  scsiTgtDevNumberOfLUs = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 1, 1, 1), Gauge32()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiTgtDevNumberOfLUs.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtDevNumberOfLUs.setDescription('This object is the number of logical units accessible via this local SCSI target device.')
  scsiTgtDeviceStatus = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 1, 1, 2), Integer32().subtype(subtypeSpec=ConstraintsUnion(SingleValueConstraint(1, 2, 3, 4, 5, 6, 7, 8))).clone(namedValues=NamedValues(("unknown", 1), ("available", 2), ("broken", 3), ("readying", 4), ("abnormal", 5), ("nonAddrFailure", 6), ("nonAddrFailReadying", 7), ("nonAddrFailAbnormal", 8)))).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiTgtDeviceStatus.setReference('SCSI Controller Commands-2 (SCC-2) ANSI INCITS 318-1998 6.3.1.8 REPORT STATES service action [SCC2]')
  if mibBuilder.loadTexts: scsiTgtDeviceStatus.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtDeviceStatus.setDescription('This object represents the status of this SCSI device, summarizing the state of both the addressable devices (i.e., the logical units) and the non-addressable devices within this SCSI device: - unknown(1): This value is used when the status cannot be determined - available(2): All addressable and non-addressable devices within the SCSI device are fully operational (i.e., no logical units have an abnormal status). - broken(3): The SCSI device is not operational and cannot be made operational without external intervention. - readying(4): One or more logical units within the SCSI device are being initialized and access to the SCSI device is temporarily limited (i.e., one or more of the logical units have a readying status). - abnormal(5): One or more addressable devices within the SCSI device are indicating a status other than available; nevertheless, the SCSI device is operational (i.e., one or more of the logical units have an abnormal status). - nonAddrFailure(6): One or more non-addressable devices within the SCSI device have failed; nevertheless, the SCSI device is operational (i.e., no logical units have an abnormal or readying status). - nonAddrFailReadying(7): One or more non-addressable devices within the SCSI device have failed; nevertheless, one or more logical units within the SCSI device are being initialized and access to the SCSI device is temporarily limited. - nonAddrFailAbnormal(8): One or more non-addressable devices within the SCSI device have failed and one or more addressable devices within the SCSI device are indicating a status other than available; however, the SCSI device is operational. ')
  scsiTgtDevNonAccessibleLUs = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 1, 1, 3), Gauge32()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiTgtDevNonAccessibleLUs.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtDevNonAccessibleLUs.setDescription('This object is the number of logical units existing but not currently accessible via this local SCSI target device.')
  scsiTgtDevResets = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 1, 1, 4), Counter32()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiTgtDevResets.setReference('SCSI Architecture Model-2 (SAM-2), ANSI INCITS 366-2003, T10 Project 1157-D, 12 September 2002 - Chapter 5.9.7 [SAM2]')
  if mibBuilder.loadTexts: scsiTgtDevResets.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtDevResets.setDescription('This object counts the number of hard resets encountered by this SCSI target device. Discontinuities in the value of this counter can occur at re- initialization of the management system.')
  scsiTgtPortTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 3, 2), )
  if mibBuilder.loadTexts: scsiTgtPortTable.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtPortTable.setDescription('This table includes all the local SCSI target ports of all the local SCSI target devices.')
  scsiTgtPortEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 3, 2, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"), (0, "SCSI-MIB", "scsiPortIndex"))
  if mibBuilder.loadTexts: scsiTgtPortEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtPortEntry.setDescription('An entry (row) containing information applicable to a particular local SCSI target port of a particular local SCSI target device within a particular SCSI instance.')
  scsiTgtPortName = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 2, 1, 1), ScsiName()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiTgtPortName.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtPortName.setDescription('This object represents the name of the port assigned for use in the SCSI protocol.')
  scsiTgtPortIdentifier = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 2, 1, 2), ScsiIdentifier()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiTgtPortIdentifier.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtPortIdentifier.setDescription('This object represents the identifier of the port in one of the format(s) appropriate for the type of transport.')
  scsiTgtPortInCommands = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 2, 1, 3), Counter32()).setUnits('commands').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiTgtPortInCommands.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtPortInCommands.setDescription('This object represents the number of commands received by this SCSI target port. Discontinuities in the value of this counter can occur at re- initialization of the management system.')
  scsiTgtPortWrittenMegaBytes = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 2, 1, 4), Counter32()).setUnits('Megabytes').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiTgtPortWrittenMegaBytes.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtPortWrittenMegaBytes.setDescription('This object represents the amount of data written in megabytes by this SCSI target port. Discontinuities in the value of this counter can occur at re- initialization of the management system.')
  scsiTgtPortReadMegaBytes = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 2, 1, 5), Counter32()).setUnits('Megabytes').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiTgtPortReadMegaBytes.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtPortReadMegaBytes.setDescription('This object represents the amount of data read in megabytes by this SCSI target port. Discontinuities in the value of this counter can occur at re- initialization of the management system.')
  scsiTgtPortHSInCommands = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 2, 1, 6), Counter64()).setUnits('commands').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiTgtPortHSInCommands.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtPortHSInCommands.setDescription('This object represents the number of commands received. This object provides support for systems that can quickly generate a large number of commands because they run at high speed. Discontinuities in the value of this counter can occur at re- initialization of the management system.')
  scsiRemoteIntrDev = MibIdentifier((1, 3, 6, 1, 2, 1, 139, 2, 3, 3))
  scsiAuthorizedIntrTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 1), )
  if mibBuilder.loadTexts: scsiAuthorizedIntrTable.setStatus('current')
  if mibBuilder.loadTexts: scsiAuthorizedIntrTable.setDescription('This table includes all the authorized SCSI initiator devices or ports that may attach a SCSI target device (ScsiAuthIntrTgtPortIndex = 0) or port (ScsiAuthIntrTgtPortIndex different than 0) of the local SCSI instance. Statistics are kept for each such authorization; thus, the authorizations should be configured in the manner that will cause the desired set of statistics to be collected and that will determine the correct LUN map.')
  scsiAuthorizedIntrEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 1, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"), (0, "SCSI-MIB", "scsiAuthIntrTgtPortIndex"), (0, "SCSI-MIB", "scsiAuthIntrIndex"))
  if mibBuilder.loadTexts: scsiAuthorizedIntrEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiAuthorizedIntrEntry.setDescription('An entry (row) represents a remote SCSI initiator port or remote SCSI initiator device that may attach to the local SCSI target port or device within a particular SCSI instance. The StorageType of a row in this table is specified by the instance of scsiInstStorageType that is INDEXed by the same value of scsiInstIndex.')
  scsiAuthIntrTgtPortIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 1, 1, 1), ScsiPortIndexValueOrZero())
  if mibBuilder.loadTexts: scsiAuthIntrTgtPortIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiAuthIntrTgtPortIndex.setDescription('This object contains either the index of the port or zero, to indicate any port, on the particular local SCSI target device.')
  scsiAuthIntrIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 1, 1, 2), ScsiIndexValue())
  if mibBuilder.loadTexts: scsiAuthIntrIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiAuthIntrIndex.setDescription('This object is an arbitrary integer used to uniquely identify a SCSI initiator device or port that is authorized to attach to a particular local SCSI target device or port of a particular SCSI instance.')
  scsiAuthIntrDevOrPort = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 1, 1, 3), ScsiDeviceOrPort()).setMaxAccess("readcreate")
  if mibBuilder.loadTexts: scsiAuthIntrDevOrPort.setStatus('current')
  if mibBuilder.loadTexts: scsiAuthIntrDevOrPort.setDescription('This object specifies whether this entry refers to a remote SCSI initiator port or to a SCSI initiator device. A value of device(1) means that the authorized remote initiator is a SCSI initiator device and includes all of its ports. A value of port(2) means that the authorized remote initiator is a SCSI initiator port.')
  scsiAuthIntrName = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 1, 1, 4), ScsiName()).setMaxAccess("readcreate")
  if mibBuilder.loadTexts: scsiAuthIntrName.setStatus('current')
  if mibBuilder.loadTexts: scsiAuthIntrName.setDescription('This object represents the name of the remote SCSI initiator device or port authorized by this row.')
  scsiAuthIntrLunMapIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 1, 1, 5), ScsiIndexValueOrZero()).setMaxAccess("readcreate")
  if mibBuilder.loadTexts: scsiAuthIntrLunMapIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiAuthIntrLunMapIndex.setDescription('This object identifies the set of entries in the scsiLunMapTable for which scsiLunMapIndex has the same value as the value of this object. The identified set of entries constitutes the LUN map to be used for accessing logical units when the remote SCSI initiator port or device corresponding to this entry is attached to any local SCSI target port or device corresponding to this entry. Note that this object has a value of zero if this entry should use the default LUN map.')
  scsiAuthIntrAttachedTimes = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 1, 1, 6), Counter32()).setUnits('Times').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiAuthIntrAttachedTimes.setStatus('current')
  if mibBuilder.loadTexts: scsiAuthIntrAttachedTimes.setDescription('This object indicates the number of times that this remote SCSI initiator device or port has transitioned from unattached to attached to this local SCSI target device or port. Discontinuities in the value of this counter can occur at re- initialization of the management system, and at other times as indicated by the value of scsiAuthIntrLastCreation.')
  scsiAuthIntrOutCommands = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 1, 1, 7), Counter32()).setUnits('commands').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiAuthIntrOutCommands.setStatus('current')
  if mibBuilder.loadTexts: scsiAuthIntrOutCommands.setDescription('This object indicates the number of commands that the remote SCSI initiator device or port corresponding to this entry has sent to the local SCSI target device or port corresponding to this entry. Discontinuities in the value of this counter can occur at re- initialization of the management system, and at other times as indicated by the value of scsiAuthIntrLastCreation.')
  scsiAuthIntrReadMegaBytes = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 1, 1, 8), Counter32()).setUnits('Megabytes').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiAuthIntrReadMegaBytes.setStatus('current')
  if mibBuilder.loadTexts: scsiAuthIntrReadMegaBytes.setDescription('This object indicates the amount of data in megabytes that the remote SCSI initiator device or port corresponding to this entry has read from the local SCSI target device or port corresponding to this entry. Discontinuities in the value of this counter can occur at re- initialization of the management system, and at other times as indicated by the value of scsiAuthIntrLastCreation.')
  scsiAuthIntrWrittenMegaBytes = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 1, 1, 9), Counter32()).setUnits('Megabytes').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiAuthIntrWrittenMegaBytes.setStatus('current')
  if mibBuilder.loadTexts: scsiAuthIntrWrittenMegaBytes.setDescription('This object indicates the amount of data in megabytes that the remote SCSI initiator device or port corresponding to this entry has written to the local SCSI target device or port corresponding to this entry. Discontinuities in the value of this counter can occur at re- initialization of the management system, and at other times as indicated by the value of scsiAuthIntrLastCreation.')
  scsiAuthIntrHSOutCommands = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 1, 1, 10), Counter64()).setUnits('commands').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiAuthIntrHSOutCommands.setStatus('current')
  if mibBuilder.loadTexts: scsiAuthIntrHSOutCommands.setDescription('This object represents the number of commands sent by the remote SCSI initiator device or port corresponding to this entry to the local SCSI target device or port corresponding to this entry. This object provides support for systems that can quickly generate a large number of commands because they run at high speed. Discontinuities in the value of this counter can occur at re- initialization of the management system, and at other times as indicated by the value of scsiAuthIntrLastCreation.')
  scsiAuthIntrLastCreation = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 1, 1, 11), TimeStamp()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiAuthIntrLastCreation.setStatus('current')
  if mibBuilder.loadTexts: scsiAuthIntrLastCreation.setDescription('This object indicates the value of sysUpTime when this row was last created.')
  scsiAuthIntrRowStatus = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 1, 1, 12), RowStatus()).setMaxAccess("readcreate")
  if mibBuilder.loadTexts: scsiAuthIntrRowStatus.setStatus('current')
  if mibBuilder.loadTexts: scsiAuthIntrRowStatus.setDescription("This object allows an administrator to create or delete this entry. A newly created row cannot be made active until a value has been set for scsiAuthIntrName. In this case, the value of the corresponding instance of the scsiAuthIntrRowStatus column will stay 'notReady'. The RowStatus TC [RFC2579] requires that this DESCRIPTION clause states under which circumstances other objects in this row can be modified: The value of this object has no effect on whether other objects in this conceptual row can be modified.")
  scsiAttIntrPortTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 2), )
  if mibBuilder.loadTexts: scsiAttIntrPortTable.setStatus('current')
  if mibBuilder.loadTexts: scsiAttIntrPortTable.setDescription('This table includes all the remote SCSI initiator ports that are currently attached to a local SCSI target port of all local devices within all SCSI instances.')
  scsiAttIntrPortEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 2, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"), (0, "SCSI-MIB", "scsiPortIndex"), (0, "SCSI-MIB", "scsiAttIntrPortIndex"))
  if mibBuilder.loadTexts: scsiAttIntrPortEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiAttIntrPortEntry.setDescription('An entry (row) represents a remote SCSI initiator port currently attached to a particular local SCSI target port of a particular SCSI target device of a particular SCSI instance.')
  scsiAttIntrPortIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 2, 1, 1), ScsiIndexValue())
  if mibBuilder.loadTexts: scsiAttIntrPortIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiAttIntrPortIndex.setDescription('This object represents an arbitrary integer used to uniquely identify a particular attached remote initiator port to a particular SCSI target port within a particular SCSI target device within a particular SCSI instance.')
  scsiAttIntrPortAuthIntrIdx = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 2, 1, 2), ScsiIndexValueOrZero()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiAttIntrPortAuthIntrIdx.setStatus('current')
  if mibBuilder.loadTexts: scsiAttIntrPortAuthIntrIdx.setDescription('This object is the corresponding index in the scsiAuthorizedIntrTable for this current attached remote SCSI initiator device or zero if this remote attached SCSI initiator device is not configured in that table.')
  scsiAttIntrPortName = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 2, 1, 3), ScsiName()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiAttIntrPortName.setStatus('current')
  if mibBuilder.loadTexts: scsiAttIntrPortName.setDescription('This object represents the name of the remote SCSI initiator device attached to this local SCSI target port.')
  scsiAttIntrPortIdentifier = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 3, 3, 2, 1, 4), ScsiIdentifier()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiAttIntrPortIdentifier.setStatus('current')
  if mibBuilder.loadTexts: scsiAttIntrPortIdentifier.setDescription('This object represents the identifier of the remote SCSI initiator device attached to this local SCSI target port.')
  scsiLuTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 4, 1), )
  if mibBuilder.loadTexts: scsiLuTable.setStatus('current')
  if mibBuilder.loadTexts: scsiLuTable.setDescription('This table contains the logical units exposed by local SCSI target devices. It includes attributes for the World Wide Name (WWN), scsiLuVendorId, scsiLuProductId, and scsiLuRevisionId, which may also appear in the scsiLuIdTable. If an implementation exposes a WWN as a LuIdTable entry, it must match the scsiLuWwnName in this table. If an implementation exposes a (vendor, product, revision) identifier as an LuIdTable entry, each of these fields must match the scsiLuVendorId, scsiLuProductId, and scsiLuRevisionId attributes in this table.')
  scsiLuEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"), (0, "SCSI-MIB", "scsiLuIndex"))
  if mibBuilder.loadTexts: scsiLuEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiLuEntry.setDescription('An entry (row) contains information applicable to a particular logical unit of a particular local SCSI target device within a particular SCSI instance.')
  scsiLuIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 1), ScsiIndexValue())
  if mibBuilder.loadTexts: scsiLuIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiLuIndex.setDescription('This object represents an arbitrary integer used to uniquely identify a particular logical unit within a particular SCSI target device within a particular SCSI instance.')
  scsiLuDefaultLun = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 2), ScsiLUN()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuDefaultLun.setStatus('current')
  if mibBuilder.loadTexts: scsiLuDefaultLun.setDescription('This object represents the default Logical Unit Number (LUN) for this logical unit; if a SCSI initiator device has not been configured to view this logical unit via an entry in the ScsiLunMapTable, the LU will be visible as scsiLuDefaultLun. If this logical unit does not have a default LUN, it will only be visible if specified via the ScsiLunMapTable, and this object will contain a zero-length string.')
  scsiLuWwnName = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 3), ScsiLuNameOrZero()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuWwnName.setStatus('current')
  if mibBuilder.loadTexts: scsiLuWwnName.setDescription('This object represents the World Wide Name of this LU that is the device identifier of the Vital Product Data (VPD) page name; if there is no WWN for this LU, this object will contain a zero-length string. If there is more than one identifier, they will be listed in the scsiLuIdTable and this object will contain a zero-length string.')
  scsiLuVendorId = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 4), SnmpAdminString()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuVendorId.setStatus('current')
  if mibBuilder.loadTexts: scsiLuVendorId.setDescription('This object represents a string identifying the vendor of this LU as reported in the Standard INQUIRY data.')
  scsiLuProductId = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 5), SnmpAdminString()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuProductId.setStatus('current')
  if mibBuilder.loadTexts: scsiLuProductId.setDescription('This object represents a string identifying the product for this LU as reported in the Standard INQUIRY data.')
  scsiLuRevisionId = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 6), SnmpAdminString()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuRevisionId.setStatus('current')
  if mibBuilder.loadTexts: scsiLuRevisionId.setDescription('This object represents a string defining the product revision of this LU as reported in the Standard INQUIRY data.')
  scsiLuPeripheralType = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 7), Unsigned32()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuPeripheralType.setReference('ANSI - SCSI Primary Commands - 2 (SPC-2), ANSI INCITS 351-2001,11 July 2001 [SPC2]- Table 48.')
  if mibBuilder.loadTexts: scsiLuPeripheralType.setStatus('current')
  if mibBuilder.loadTexts: scsiLuPeripheralType.setDescription('This object is the value returned by SCSI Standard INQUIRY data. It can be: direct-access device, sequential-access device, printer, communication device and so on. The values that can be returned here are defined in SCSI Primary Commands -2.')
  scsiLuStatus = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 8), Integer32().subtype(subtypeSpec=ConstraintsUnion(SingleValueConstraint(1, 2, 3, 4, 5, 6))).clone(namedValues=NamedValues(("unknown", 1), ("available", 2), ("notAvailable", 3), ("broken", 4), ("readying", 5), ("abnormal", 6)))).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuStatus.setReference('SCSI Controller Commands-2 (SCC-2) ANSI INCITS 318-1998 6.3.1.8 REPORT STATES service action [SCC2]')
  if mibBuilder.loadTexts: scsiLuStatus.setStatus('current')
  if mibBuilder.loadTexts: scsiLuStatus.setDescription('This object represents the status of this logical unit: - unknown(1): The status of this logical unit cannot be determined. - available(2): The logical unit is fully operational (i.e., accepts media access SCSI commands and has no state information to report). - notAvailable(3): The logical unit is capable of being supported but is not available (i.e., no logical unit is currently present or the logical unit is present but not configured for use). - broken(4): The logical unit has failed and cannot respond to SCSI commands. - readying(5): The logical unit is being initialized and access is temporarily limited. - abnormal(6): The logical unit has state information available that indicates it is operating with limits. The scsiLuState indicates what those limits are. ')
  scsiLuState = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 9), Bits().clone(namedValues=NamedValues(("dataLost", 0), ("dynamicReconfigurationInProgress", 1), ("exposed", 2), ("fractionallyExposed", 3), ("partiallyExposed", 4), ("protectedRebuild", 5), ("protectionDisabled", 6), ("rebuild", 7), ("recalculate", 8), ("spareInUse", 9), ("verifyInProgress", 10)))).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuState.setReference('SCSI Controller Commands-2 (SCC-2) ANSI INCITS 318-1998 6.3.1.8 REPORT STATES service action [SCC2]')
  if mibBuilder.loadTexts: scsiLuState.setStatus('current')
  if mibBuilder.loadTexts: scsiLuState.setDescription('This object represents the state of a logical unit and its meaning according to the bit position: 0 Data lost: Within the logical unit data has been lost. 1 Dynamic reconfiguration in progress: The logical unit is being reconfigured. In this state all data is still protected. 2 Exposed: Within the logical unit data is not protected. In this state all data is still valid; however, loss of data or data availability is unavoidable in the event of a failure. 3 Fractionally exposed: Within the logical unit part of the data is not protected. In this state all data is still valid; however, a failure may cause a loss of data or a loss of data availability. 4 Partially exposed: Within the logical unit one or more underlying storage devices have failed. In this state all data is still protected. 5 Protected rebuild: The logical unit is in the process of a rebuild operation. In this state all data is protected. 6 Protection disabled: Within the logical unit the data protection method has been disabled. In this state all data is still valid; however, loss of data or data availability is unavoidable in the event of a failure. 7 Rebuild: The data protection method is in the process of rebuilding data. In this state data is not protected. 8 Recalculate: The logical unit is in the process of a recalculate operation. 9 Spare in use: Within the logical unit a storage device in full or part is being used to store data. In this state all data is still protected. 10 Verify in progress: Within the logical unit data is being verified.')
  scsiLuInCommands = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 10), Counter32()).setUnits('commands').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuInCommands.setStatus('current')
  if mibBuilder.loadTexts: scsiLuInCommands.setDescription('This object represents the number of commands received by this logical unit. Discontinuities in the value of this counter can occur at re- initialization of the management system, and at other times as indicated by the value of scsiLuLastCreation.')
  scsiLuReadMegaBytes = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 11), Counter32()).setUnits('Megabytes').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuReadMegaBytes.setStatus('current')
  if mibBuilder.loadTexts: scsiLuReadMegaBytes.setDescription('This object represents the amount of data in megabytes read from this logical unit. Discontinuities in the value of this counter can occur at re- initialization of the management system, and at other times as indicated by the value of scsiLuLastCreation.')
  scsiLuWrittenMegaBytes = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 12), Counter32()).setUnits('Megabytes').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuWrittenMegaBytes.setStatus('current')
  if mibBuilder.loadTexts: scsiLuWrittenMegaBytes.setDescription('This object represents the amount of data in megabytes written to this logical unit. Discontinuities in the value of this counter can occur at re- initialization of the management system, and at other times as indicated by the value of scsiLuLastCreation.')
  scsiLuInResets = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 13), Counter32()).setUnits('resets').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuInResets.setReference('SCSI Architecture Model-2 (SAM-2), ANSI INCITS 366-2003, T10 Project 1157-D, 12 September 2002 - Chapter 5.9.7 [SAM2]')
  if mibBuilder.loadTexts: scsiLuInResets.setStatus('current')
  if mibBuilder.loadTexts: scsiLuInResets.setDescription('This object represents the number of times that this logical unit received - a LOGICAL UNIT RESET or TARGET RESET task management request, or - any other SCSI transport protocol-specific action or event that causes a Logical Unit Reset or a Hard Reset at a SCSI target port of the containing device ([SAM2] Chapters 5.9.6, 5.9.7). Discontinuities in the value of this counter can occur at re- initialization of the management system, and at other times as indicated by the value of scsiLuLastCreation.')
  scsiLuOutTaskSetFullStatus = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 14), Counter32()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuOutTaskSetFullStatus.setStatus('current')
  if mibBuilder.loadTexts: scsiLuOutTaskSetFullStatus.setDescription('This object represents the number of Task Set full statuses issued for this logical unit. Discontinuities in the value of this counter can occur at re- initialization of the management system, and at other times as indicated by the value of scsiLuLastCreation.')
  scsiLuHSInCommands = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 15), Counter64()).setUnits('commands').setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuHSInCommands.setStatus('current')
  if mibBuilder.loadTexts: scsiLuHSInCommands.setDescription('This object represents the number of commands received by this logical unit. This object provides support for systems that can quickly generate a large number of commands because they run at high speed. Discontinuities in the value of this counter can occur at re- initialization of the management system, and at other times as indicated by the value of scsiLuLastCreation.')
  scsiLuLastCreation = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 1, 1, 16), TimeStamp()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuLastCreation.setStatus('current')
  if mibBuilder.loadTexts: scsiLuLastCreation.setDescription('This object indicates the value of sysUpTime when this row was last created.')
  scsiLuIdTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 4, 2), )
  if mibBuilder.loadTexts: scsiLuIdTable.setStatus('current')
  if mibBuilder.loadTexts: scsiLuIdTable.setDescription('A table of identifiers for all logical units exposed by the local SCSI target device.')
  scsiLuIdEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 4, 2, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"), (0, "SCSI-MIB", "scsiLuIndex"), (0, "SCSI-MIB", "scsiLuIdIndex"))
  if mibBuilder.loadTexts: scsiLuIdEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiLuIdEntry.setDescription('An entry (row) containing information applicable to a particular identifier for a particular logical unit of a particular SCSI target device within a particular SCSI instance.')
  scsiLuIdIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 2, 1, 1), ScsiIndexValue())
  if mibBuilder.loadTexts: scsiLuIdIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiLuIdIndex.setDescription('This object represents an arbitrary integer used to uniquely identify a particular LU identifier within a particular logical unit within a particular SCSI target device within a particular SCSI instance.')
  scsiLuIdCodeSet = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 2, 1, 2), ScsiIdCodeSet()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuIdCodeSet.setReference('ANSI - SCSI Primary Commands - 2 (SPC-2), ANSI INCITS 351-2001, 11 July 2001 Chapter 8: section 8.4.4, Vital Product Data Parameters [SPC2]')
  if mibBuilder.loadTexts: scsiLuIdCodeSet.setStatus('current')
  if mibBuilder.loadTexts: scsiLuIdCodeSet.setDescription("This object specifies the code set in use with this identifier. The value is represented in the same format as is contained in the identifier's Identification Descriptor within the logical unit's Device Identification Page.")
  scsiLuIdAssociation = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 2, 1, 3), ScsiIdAssociation()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuIdAssociation.setReference('ANSI - SCSI Primary Commands - 2 (SPC-2), ANSI INCITS 351-2001, 11 July 2001, Chapter 8: section 8.4.4, Vital Product Data Parameters [SPC2]')
  if mibBuilder.loadTexts: scsiLuIdAssociation.setStatus('current')
  if mibBuilder.loadTexts: scsiLuIdAssociation.setDescription("This object specifies what the identifier is associated with (e.g., with the addressed physical/logical device or with a particular port). The value is represented in the same format as is contained in the identifier's Identification Descriptor within the logical unit's Device Identification Page.")
  scsiLuIdType = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 2, 1, 4), ScsiIdType()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuIdType.setReference('ANSI - SCSI Primary Commands - 2 (SPC-2), ANSI INCITS 351-2001, 11 July 2001, Chapter 8: section 8.4.4, Vital Product Data Parameters [SPC2]')
  if mibBuilder.loadTexts: scsiLuIdType.setStatus('current')
  if mibBuilder.loadTexts: scsiLuIdType.setDescription("This object specifies the type of the identifier. The value is represented in the same format as is contained in the identifier's Identification Descriptor within the logical unit's Device Identification Page.")
  scsiLuIdValue = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 2, 1, 5), ScsiIdValue()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: scsiLuIdValue.setReference('ANSI - SCSI Primary Commands - 2 (SPC-2), ANSI INCITS 351-2001, 11 July 2001, Chapter 8: section 8.4.4, Vital Product Data Parameters [SPC2]')
  if mibBuilder.loadTexts: scsiLuIdValue.setStatus('current')
  if mibBuilder.loadTexts: scsiLuIdValue.setDescription("This object represents the actual value of this identifier. The format is defined by the objects scsiLuIdCodeSet, scsiLuIdAssociation, scsiLuIdType. The value is represented in the same format as is contained in the identifier's Identification Descriptor within the logical unit's Device Identification Page.")
  scsiLunMapTable = MibTable((1, 3, 6, 1, 2, 1, 139, 2, 4, 3), )
  if mibBuilder.loadTexts: scsiLunMapTable.setStatus('current')
  if mibBuilder.loadTexts: scsiLunMapTable.setDescription('This table provides the ability to present a logical unit using different Logical Unit Numbers for different SCSI initiator devices. This table provides a mapping between a logical unit and a Logical Unit Number, and can be referenced by a ScsiAuthorizedIntrEntry to specify the LUN map for that initiator.')
  scsiLunMapEntry = MibTableRow((1, 3, 6, 1, 2, 1, 139, 2, 4, 3, 1), ).setIndexNames((0, "SCSI-MIB", "scsiInstIndex"), (0, "SCSI-MIB", "scsiDeviceIndex"), (0, "SCSI-MIB", "scsiLunMapIndex"), (0, "SCSI-MIB", "scsiLunMapLun"))
  if mibBuilder.loadTexts: scsiLunMapEntry.setStatus('current')
  if mibBuilder.loadTexts: scsiLunMapEntry.setDescription('An entry containing information about the mapping of a particular logical unit to a particular LUN. The set of entries that all have the same values of scsiInstIndex, scsiDeviceIndex and scsiLunMapIndex constitutes a LUN map within a particular SCSI instance. The StorageType of a row in this table is specified by the instance of scsiInstStorageType that is INDEX-ed by the same value of scsiInstIndex.')
  scsiLunMapIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 3, 1, 1), ScsiIndexValue())
  if mibBuilder.loadTexts: scsiLunMapIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiLunMapIndex.setDescription('This object represents an arbitrary integer used to uniquely identify a particular LunMap within a particular SCSI target device within a particular SCSI instance.')
  scsiLunMapLun = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 3, 1, 2), ScsiLUN())
  if mibBuilder.loadTexts: scsiLunMapLun.setStatus('current')
  if mibBuilder.loadTexts: scsiLunMapLun.setDescription('This object specifies the Logical Unit Number, to which a logical unit is mapped by this row.')
  scsiLunMapLuIndex = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 3, 1, 3), ScsiIndexValue()).setMaxAccess("readcreate")
  if mibBuilder.loadTexts: scsiLunMapLuIndex.setStatus('current')
  if mibBuilder.loadTexts: scsiLunMapLuIndex.setDescription('This object identifies the logical unit for which the value of scsiLuIndex is the same as the value of this object. The identified logical unit is the one mapped to a LUN by this row.')
  scsiLunMapRowStatus = MibTableColumn((1, 3, 6, 1, 2, 1, 139, 2, 4, 3, 1, 4), RowStatus()).setMaxAccess("readcreate")
  if mibBuilder.loadTexts: scsiLunMapRowStatus.setStatus('current')
  if mibBuilder.loadTexts: scsiLunMapRowStatus.setDescription('This object allows an administrator to create and delete this entry.')
  scsiNotificationsPrefix = MibIdentifier((1, 3, 6, 1, 2, 1, 139, 0, 0))
  scsiTgtDeviceStatusChanged = NotificationType((1, 3, 6, 1, 2, 1, 139, 0, 0, 1)).setObjects(("SCSI-MIB", "scsiTgtDeviceStatus"))
  if mibBuilder.loadTexts: scsiTgtDeviceStatusChanged.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtDeviceStatusChanged.setDescription("This notification will be generated for each occurrence of the abnormal status (e.g., if the SCSI target device's current status is abnormal) providing that the SCSI instance's value of scsiInstScsiNotificationsEnable is enabled. An SNMP agent implementing the SCSI MIB module should not send more than three SCSI identical notifications in any 10-second period.")
  scsiLuStatusChanged = NotificationType((1, 3, 6, 1, 2, 1, 139, 0, 0, 2)).setObjects(("SCSI-MIB", "scsiLuStatus"))
  if mibBuilder.loadTexts: scsiLuStatusChanged.setStatus('current')
  if mibBuilder.loadTexts: scsiLuStatusChanged.setDescription("This notification will be generated each time that scsiLuStatus changes providing that the SCSI instance's value of scsiInstScsiNotificationsEnable is enabled. An SNMP agent implementing the SCSI MIB module should not send more than three SCSI identical notifications in any 10-second period.")
  scsiCompliances = MibIdentifier((1, 3, 6, 1, 2, 1, 139, 3, 1))
  scsiCompliance = ModuleCompliance((1, 3, 6, 1, 2, 1, 139, 3, 1, 1)).setObjects(("SCSI-MIB", "scsiDeviceGroup"))
  
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiCompliance = scsiCompliance.setStatus('current')
  if mibBuilder.loadTexts: scsiCompliance.setDescription('Describes the requirements for compliance to this SCSI MIB module. If an implementation can be both a SCSI target device and a SCSI initiator device, all groups are mandatory.')
  scsiGroups = MibIdentifier((1, 3, 6, 1, 2, 1, 139, 3, 2))
  scsiDeviceGroup = ObjectGroup((1, 3, 6, 1, 2, 1, 139, 3, 2, 1)).setObjects(("SCSI-MIB", "scsiInstAlias"), ("SCSI-MIB", "scsiInstSoftwareIndex"), ("SCSI-MIB", "scsiInstVendorVersion"), ("SCSI-MIB", "scsiInstScsiNotificationsEnable"), ("SCSI-MIB", "scsiInstStorageType"), ("SCSI-MIB", "scsiDeviceAlias"), ("SCSI-MIB", "scsiDeviceRole"), ("SCSI-MIB", "scsiDevicePortNumber"), ("SCSI-MIB", "scsiPortRole"), ("SCSI-MIB", "scsiPortTransportPtr"), ("SCSI-MIB", "scsiTransportType"), ("SCSI-MIB", "scsiTransportPointer"), ("SCSI-MIB", "scsiTransportDevName"))
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiDeviceGroup = scsiDeviceGroup.setStatus('current')
  if mibBuilder.loadTexts: scsiDeviceGroup.setDescription('A collection of objects providing information about SCSI instances, devices, and ports.')
  scsiInitiatorDeviceGroup = ObjectGroup((1, 3, 6, 1, 2, 1, 139, 3, 2, 2)).setObjects(("SCSI-MIB", "scsiIntrDevTgtAccessMode"), ("SCSI-MIB", "scsiIntrPortName"), ("SCSI-MIB", "scsiIntrPortIdentifier"), ("SCSI-MIB", "scsiAttTgtPortDscTgtIdx"), ("SCSI-MIB", "scsiAttTgtPortName"), ("SCSI-MIB", "scsiAttTgtPortIdentifier"))
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiInitiatorDeviceGroup = scsiInitiatorDeviceGroup.setStatus('current')
  if mibBuilder.loadTexts: scsiInitiatorDeviceGroup.setDescription('This group is relevant for s SCSI initiator device and port.')
  scsiDiscoveryGroup = ObjectGroup((1, 3, 6, 1, 2, 1, 139, 3, 2, 3)).setObjects(("SCSI-MIB", "scsiDscTgtDevOrPort"), ("SCSI-MIB", "scsiDscTgtName"), ("SCSI-MIB", "scsiDscTgtConfigured"), ("SCSI-MIB", "scsiDscTgtDiscovered"), ("SCSI-MIB", "scsiDscTgtRowStatus"), ("SCSI-MIB", "scsiDscTgtLastCreation"), ("SCSI-MIB", "scsiDscLunLun"), ("SCSI-MIB", "scsiDscLunIdCodeSet"), ("SCSI-MIB", "scsiDscLunIdAssociation"), ("SCSI-MIB", "scsiDscLunIdType"), ("SCSI-MIB", "scsiDscLunIdValue"))
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiDiscoveryGroup = scsiDiscoveryGroup.setStatus('current')
  if mibBuilder.loadTexts: scsiDiscoveryGroup.setDescription('This group is relevant for the discovered SCSI target devices by a SCSI initiator port.')
  scsiTargetDeviceGroup = ObjectGroup((1, 3, 6, 1, 2, 1, 139, 3, 2, 4)).setObjects(("SCSI-MIB", "scsiTgtDevNumberOfLUs"), ("SCSI-MIB", "scsiTgtDeviceStatus"), ("SCSI-MIB", "scsiTgtDevNonAccessibleLUs"), ("SCSI-MIB", "scsiTgtPortName"), ("SCSI-MIB", "scsiTgtPortIdentifier"), ("SCSI-MIB", "scsiAttIntrPortAuthIntrIdx"), ("SCSI-MIB", "scsiAttIntrPortName"), ("SCSI-MIB", "scsiAttIntrPortIdentifier"), ("SCSI-MIB", "scsiLuDefaultLun"), ("SCSI-MIB", "scsiLuWwnName"), ("SCSI-MIB", "scsiLuVendorId"), ("SCSI-MIB", "scsiLuProductId"), ("SCSI-MIB", "scsiLuRevisionId"), ("SCSI-MIB", "scsiLuPeripheralType"), ("SCSI-MIB", "scsiLuStatus"), ("SCSI-MIB", "scsiLuState"), ("SCSI-MIB", "scsiLuLastCreation"), ("SCSI-MIB", "scsiLuIdCodeSet"), ("SCSI-MIB", "scsiLuIdAssociation"), ("SCSI-MIB", "scsiLuIdType"), ("SCSI-MIB", "scsiLuIdValue"))
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiTargetDeviceGroup = scsiTargetDeviceGroup.setStatus('current')
  if mibBuilder.loadTexts: scsiTargetDeviceGroup.setDescription('This group is relevant for a SCSI target device and port.')
  scsiLunMapGroup = ObjectGroup((1, 3, 6, 1, 2, 1, 139, 3, 2, 5)).setObjects(("SCSI-MIB", "scsiLunMapLuIndex"), ("SCSI-MIB", "scsiLunMapRowStatus"), ("SCSI-MIB", "scsiAuthIntrDevOrPort"), ("SCSI-MIB", "scsiAuthIntrName"), ("SCSI-MIB", "scsiAuthIntrLunMapIndex"), ("SCSI-MIB", "scsiAuthIntrLastCreation"), ("SCSI-MIB", "scsiAuthIntrRowStatus"))
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiLunMapGroup = scsiLunMapGroup.setStatus('current')
  if mibBuilder.loadTexts: scsiLunMapGroup.setDescription('This group is a collection of attributes regarding the mapping between Logical Unit Number, logical unit, and target device.')
  scsiTargetDevStatsGroup = ObjectGroup((1, 3, 6, 1, 2, 1, 139, 3, 2, 6)).setObjects(("SCSI-MIB", "scsiTgtDevResets"), ("SCSI-MIB", "scsiTgtPortInCommands"), ("SCSI-MIB", "scsiTgtPortWrittenMegaBytes"), ("SCSI-MIB", "scsiTgtPortReadMegaBytes"), ("SCSI-MIB", "scsiLuInCommands"), ("SCSI-MIB", "scsiLuReadMegaBytes"), ("SCSI-MIB", "scsiLuWrittenMegaBytes"), ("SCSI-MIB", "scsiLuInResets"), ("SCSI-MIB", "scsiLuOutTaskSetFullStatus"))
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiTargetDevStatsGroup = scsiTargetDevStatsGroup.setStatus('current')
  if mibBuilder.loadTexts: scsiTargetDevStatsGroup.setDescription('This group is a collection of statistics for all implementations of the SCSI MIB module that contain SCSI target devices.')
  scsiTargetDevHSStatsGroup = ObjectGroup((1, 3, 6, 1, 2, 1, 139, 3, 2, 7)).setObjects(("SCSI-MIB", "scsiTgtPortHSInCommands"), ("SCSI-MIB", "scsiLuHSInCommands"))
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiTargetDevHSStatsGroup = scsiTargetDevHSStatsGroup.setStatus('current')
  if mibBuilder.loadTexts: scsiTargetDevHSStatsGroup.setDescription('This group is a collection of high speed statistics for all implementations of the SCSI MIB module that contain SCSI target devices.')
  scsiLunMapStatsGroup = ObjectGroup((1, 3, 6, 1, 2, 1, 139, 3, 2, 8)).setObjects(("SCSI-MIB", "scsiAuthIntrAttachedTimes"), ("SCSI-MIB", "scsiAuthIntrOutCommands"), ("SCSI-MIB", "scsiAuthIntrReadMegaBytes"), ("SCSI-MIB", "scsiAuthIntrWrittenMegaBytes"))
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiLunMapStatsGroup = scsiLunMapStatsGroup.setStatus('current')
  if mibBuilder.loadTexts: scsiLunMapStatsGroup.setDescription('This group is a collection of statistics regarding SCSI initiator devices authorized to attach local logical unit and SCSI target device.')
  scsiLunMapHSStatsGroup = ObjectGroup((1, 3, 6, 1, 2, 1, 139, 3, 2, 9)).setObjects(("SCSI-MIB", "scsiAuthIntrHSOutCommands"))
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiLunMapHSStatsGroup = scsiLunMapHSStatsGroup.setStatus('current')
  if mibBuilder.loadTexts: scsiLunMapHSStatsGroup.setDescription('This group is a collection of high speed statistics regarding SCSI initiator devices authorized to attach local logical unit and SCSI target device.')
  scsiInitiatorDevStatsGroup = ObjectGroup((1, 3, 6, 1, 2, 1, 139, 3, 2, 10)).setObjects(("SCSI-MIB", "scsiIntrDevOutResets"), ("SCSI-MIB", "scsiIntrPortOutCommands"), ("SCSI-MIB", "scsiIntrPortWrittenMegaBytes"), ("SCSI-MIB", "scsiIntrPortReadMegaBytes"))
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiInitiatorDevStatsGroup = scsiInitiatorDevStatsGroup.setStatus('current')
  if mibBuilder.loadTexts: scsiInitiatorDevStatsGroup.setDescription('This group is a collection of statistics for all implementations of the SCSI MIB module that contain SCSI initiator devices.')
  scsiInitiatorDevHSStatsGroup = ObjectGroup((1, 3, 6, 1, 2, 1, 139, 3, 2, 11)).setObjects(("SCSI-MIB", "scsiIntrPortHSOutCommands"))
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiInitiatorDevHSStatsGroup = scsiInitiatorDevHSStatsGroup.setStatus('current')
  if mibBuilder.loadTexts: scsiInitiatorDevHSStatsGroup.setDescription('This group is a collection of high speed statistics for all implementations of the SCSI MIB module that contain SCSI initiator devices.')
  scsiDiscoveryStatsGroup = ObjectGroup((1, 3, 6, 1, 2, 1, 139, 3, 2, 12)).setObjects(("SCSI-MIB", "scsiDscTgtInCommands"), ("SCSI-MIB", "scsiDscTgtReadMegaBytes"), ("SCSI-MIB", "scsiDscTgtWrittenMegaBytes"))
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiDiscoveryStatsGroup = scsiDiscoveryStatsGroup.setStatus('current')
  if mibBuilder.loadTexts: scsiDiscoveryStatsGroup.setDescription('This group is a collection of statistics for all implementations of the SCSI MIB module that contain discovered SCSI initiator devices.')
  scsiDiscoveryHSStatsGroup = ObjectGroup((1, 3, 6, 1, 2, 1, 139, 3, 2, 13)).setObjects(("SCSI-MIB", "scsiDscTgtHSInCommands"))
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiDiscoveryHSStatsGroup = scsiDiscoveryHSStatsGroup.setStatus('current')
  if mibBuilder.loadTexts: scsiDiscoveryHSStatsGroup.setDescription('This group is a collection of high speed statistics for all implementations of the SCSI MIB module that contain discovered SCSI initiator devices.')
  scsiDeviceStatGroup = ObjectGroup((1, 3, 6, 1, 2, 1, 139, 3, 2, 14)).setObjects(("SCSI-MIB", "scsiPortBusyStatuses"))
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiDeviceStatGroup = scsiDeviceStatGroup.setStatus('current')
  if mibBuilder.loadTexts: scsiDeviceStatGroup.setDescription('A collection of statistics regarding SCSI devices and ports.')
  scsiTgtDevLuNotificationsGroup = NotificationGroup((1, 3, 6, 1, 2, 1, 139, 3, 2, 15)).setObjects(("SCSI-MIB", "scsiTgtDeviceStatusChanged"), ("SCSI-MIB", "scsiLuStatusChanged"))
  if getattr(mibBuilder, 'version', (0, 0, 0)) > (4, 4, 0):
      scsiTgtDevLuNotificationsGroup = scsiTgtDevLuNotificationsGroup.setStatus('current')
  if mibBuilder.loadTexts: scsiTgtDevLuNotificationsGroup.setDescription('A collection of notifications regarding status change of SCSI target devices and logical units.')
  mibBuilder.exportSymbols("SCSI-MIB", scsiInstAlias=scsiInstAlias, scsiIntrPortTable=scsiIntrPortTable, scsiIntrPortName=scsiIntrPortName, scsiDscLunIdIndex=scsiDscLunIdIndex, scsiTgtDevResets=scsiTgtDevResets, scsiDscTgtReadMegaBytes=scsiDscTgtReadMegaBytes, scsiAttIntrPortEntry=scsiAttIntrPortEntry, scsiTransportDevName=scsiTransportDevName, scsiAttTgtPortEntry=scsiAttTgtPortEntry, scsiPortRole=scsiPortRole, scsiDscLunIdAssociation=scsiDscLunIdAssociation, scsiLuDefaultLun=scsiLuDefaultLun, scsiTargetDevStatsGroup=scsiTargetDevStatsGroup, scsiAuthIntrOutCommands=scsiAuthIntrOutCommands, scsiPortTable=scsiPortTable, scsiTgtPortEntry=scsiTgtPortEntry, scsiTargetDevice=scsiTargetDevice, scsiInstIndex=scsiInstIndex, scsiDscTgtIndex=scsiDscTgtIndex, ScsiIdType=ScsiIdType, scsiTgtDeviceStatusChanged=scsiTgtDeviceStatusChanged, PYSNMP_MODULE_ID=scsiMIB, scsiLuIdEntry=scsiLuIdEntry, scsiDscTgtName=scsiDscTgtName, scsiLunMapIndex=scsiLunMapIndex, scsiDscLunIdCodeSet=scsiDscLunIdCodeSet, scsiTgtPortInCommands=scsiTgtPortInCommands, scsiAuthIntrRowStatus=scsiAuthIntrRowStatus, scsiInstSoftwareIndex=scsiInstSoftwareIndex, scsiTgtDevLuNotificationsGroup=scsiTgtDevLuNotificationsGroup, scsiDscTgtTable=scsiDscTgtTable, scsiAuthIntrIndex=scsiAuthIntrIndex, scsiLuProductId=scsiLuProductId, scsiLuIdType=scsiLuIdType, scsiLuStatus=scsiLuStatus, scsiLuInCommands=scsiLuInCommands, scsiPortTransportPtr=scsiPortTransportPtr, scsiLuIdTable=scsiLuIdTable, scsiLuInResets=scsiLuInResets, scsiPortBusyStatuses=scsiPortBusyStatuses, scsiAttIntrPortName=scsiAttIntrPortName, scsiDeviceTable=scsiDeviceTable, scsiTgtDevNumberOfLUs=scsiTgtDevNumberOfLUs, scsiDscTgtWrittenMegaBytes=scsiDscTgtWrittenMegaBytes, scsiGroups=scsiGroups, scsiTransportEntry=scsiTransportEntry, scsiDiscoveryGroup=scsiDiscoveryGroup, scsiLuPeripheralType=scsiLuPeripheralType, scsiRemoteIntrDev=scsiRemoteIntrDev, scsiLuReadMegaBytes=scsiLuReadMegaBytes, scsiTransportOther=scsiTransportOther, scsiTransportTypes=scsiTransportTypes, ScsiPortIndexValueOrZero=ScsiPortIndexValueOrZero, scsiIntrDevEntry=scsiIntrDevEntry, scsiInstanceTable=scsiInstanceTable, scsiIntrDevTgtAccessMode=scsiIntrDevTgtAccessMode, scsiTargetDeviceGroup=scsiTargetDeviceGroup, scsiPortEntry=scsiPortEntry, scsiAttIntrPortTable=scsiAttIntrPortTable, scsiDscTgtInCommands=scsiDscTgtInCommands, scsiAttTgtPortDscTgtIdx=scsiAttTgtPortDscTgtIdx, scsiDscTgtConfigured=scsiDscTgtConfigured, scsiConformance=scsiConformance, scsiInitiatorDevice=scsiInitiatorDevice, scsiTransportSRP=scsiTransportSRP, scsiTargetDevHSStatsGroup=scsiTargetDevHSStatsGroup, scsiLunMapStatsGroup=scsiLunMapStatsGroup, scsiDiscoveryStatsGroup=scsiDiscoveryStatsGroup, scsiTgtPortWrittenMegaBytes=scsiTgtPortWrittenMegaBytes, scsiMIB=scsiMIB, scsiDeviceRole=scsiDeviceRole, scsiDscTgtIntrPortIndex=scsiDscTgtIntrPortIndex, scsiDscTgtDevOrPort=scsiDscTgtDevOrPort, scsiAttTgtPortIdentifier=scsiAttTgtPortIdentifier, scsiTransportSBP=scsiTransportSBP, scsiLuHSInCommands=scsiLuHSInCommands, scsiDeviceEntry=scsiDeviceEntry, scsiLunMapRowStatus=scsiLunMapRowStatus, scsiDscLunIdEntry=scsiDscLunIdEntry, scsiTransportTable=scsiTransportTable, scsiAuthIntrLunMapIndex=scsiAuthIntrLunMapIndex, scsiIntrDevTable=scsiIntrDevTable, scsiIntrPortHSOutCommands=scsiIntrPortHSOutCommands, ScsiIndexValue=ScsiIndexValue, scsiAuthIntrAttachedTimes=scsiAuthIntrAttachedTimes, scsiTgtPortReadMegaBytes=scsiTgtPortReadMegaBytes, scsiObjects=scsiObjects, scsiTransportPointer=scsiTransportPointer, scsiIntrDevOutResets=scsiIntrDevOutResets, scsiTgtPortTable=scsiTgtPortTable, scsiIntrPortIdentifier=scsiIntrPortIdentifier, scsiDscLunTable=scsiDscLunTable, scsiDevicePortNumber=scsiDevicePortNumber, scsiDeviceIndex=scsiDeviceIndex, scsiDscLunLun=scsiDscLunLun, scsiLunMapLuIndex=scsiLunMapLuIndex, scsiIntrPortOutCommands=scsiIntrPortOutCommands, scsiIntrPortReadMegaBytes=scsiIntrPortReadMegaBytes, scsiLuOutTaskSetFullStatus=scsiLuOutTaskSetFullStatus, scsiDscTgtEntry=scsiDscTgtEntry, scsiLuState=scsiLuState, scsiDscLunIdTable=scsiDscLunIdTable, scsiTransportISCSI=scsiTransportISCSI, scsiCompliances=scsiCompliances, scsiLuIdValue=scsiLuIdValue, ScsiLuNameOrZero=ScsiLuNameOrZero, scsiLuStatusChanged=scsiLuStatusChanged, scsiLunMapLun=scsiLunMapLun, scsiLuIdAssociation=scsiLuIdAssociation, scsiInstStorageType=scsiInstStorageType, scsiDscTgtDiscovered=scsiDscTgtDiscovered, scsiLogicalUnit=scsiLogicalUnit, scsiAuthIntrName=scsiAuthIntrName, scsiCompliance=scsiCompliance, scsiNotifications=scsiNotifications, scsiLunMapTable=scsiLunMapTable, scsiTgtPortName=scsiTgtPortName, scsiLuWrittenMegaBytes=scsiLuWrittenMegaBytes, scsiDeviceStatGroup=scsiDeviceStatGroup, scsiInstanceEntry=scsiInstanceEntry, scsiAttTgtPortName=scsiAttTgtPortName, ScsiIndexValueOrZero=ScsiIndexValueOrZero, scsiIntrPortWrittenMegaBytes=scsiIntrPortWrittenMegaBytes, scsiAttIntrPortIndex=scsiAttIntrPortIndex, scsiTransportFCP=scsiTransportFCP, scsiAttTgtPortIndex=scsiAttTgtPortIndex, scsiLuEntry=scsiLuEntry, ScsiDeviceOrPort=ScsiDeviceOrPort, scsiInitiatorDevStatsGroup=scsiInitiatorDevStatsGroup, scsiTgtDevEntry=scsiTgtDevEntry, scsiGeneral=scsiGeneral, scsiTransportSAS=scsiTransportSAS, ScsiName=ScsiName, scsiLuIndex=scsiLuIndex, scsiDiscoveryHSStatsGroup=scsiDiscoveryHSStatsGroup, scsiDeviceAlias=scsiDeviceAlias, scsiInitiatorDevHSStatsGroup=scsiInitiatorDevHSStatsGroup, scsiInstVendorVersion=scsiInstVendorVersion, scsiAuthorizedIntrEntry=scsiAuthorizedIntrEntry, ScsiHrSWInstalledIndexOrZero=ScsiHrSWInstalledIndexOrZero, scsiInitiatorDeviceGroup=scsiInitiatorDeviceGroup, scsiDscLunIdValue=scsiDscLunIdValue, scsiTgtPortHSInCommands=scsiTgtPortHSInCommands, scsiAuthIntrDevOrPort=scsiAuthIntrDevOrPort, ScsiIdCodeSet=ScsiIdCodeSet, scsiDscTgtLastCreation=scsiDscTgtLastCreation, ScsiIdentifier=ScsiIdentifier, scsiAuthIntrLastCreation=scsiAuthIntrLastCreation, scsiLuIdCodeSet=scsiLuIdCodeSet, scsiTransportIndex=scsiTransportIndex, scsiRemoteTgtDev=scsiRemoteTgtDev, scsiAdmin=scsiAdmin, scsiInstScsiNotificationsEnable=scsiInstScsiNotificationsEnable, scsiLuWwnName=scsiLuWwnName, scsiIntrPortEntry=scsiIntrPortEntry, scsiTgtDevNonAccessibleLUs=scsiTgtDevNonAccessibleLUs, scsiLuVendorId=scsiLuVendorId, scsiTgtDevTable=scsiTgtDevTable, scsiDscLunIdType=scsiDscLunIdType, ScsiIdValue=ScsiIdValue, scsiTransportSPI=scsiTransportSPI, scsiLuRevisionId=scsiLuRevisionId, scsiAuthIntrTgtPortIndex=scsiAuthIntrTgtPortIndex, scsiAttIntrPortAuthIntrIdx=scsiAttIntrPortAuthIntrIdx, scsiDeviceGroup=scsiDeviceGroup, scsiAttTgtPortTable=scsiAttTgtPortTable, scsiAuthIntrReadMegaBytes=scsiAuthIntrReadMegaBytes, scsiDscLunIndex=scsiDscLunIndex, scsiAuthIntrWrittenMegaBytes=scsiAuthIntrWrittenMegaBytes, scsiTgtDeviceStatus=scsiTgtDeviceStatus, ScsiLUN=ScsiLUN, scsiLunMapHSStatsGroup=scsiLunMapHSStatsGroup, scsiAuthIntrHSOutCommands=scsiAuthIntrHSOutCommands, scsiDscTgtHSInCommands=scsiDscTgtHSInCommands, scsiLunMapGroup=scsiLunMapGroup, scsiNotificationsPrefix=scsiNotificationsPrefix, scsiLuIdIndex=scsiLuIdIndex, scsiAttIntrPortIdentifier=scsiAttIntrPortIdentifier, ScsiIdAssociation=ScsiIdAssociation, scsiAuthorizedIntrTable=scsiAuthorizedIntrTable, scsiLuLastCreation=scsiLuLastCreation, scsiPortIndex=scsiPortIndex, scsiLunMapEntry=scsiLunMapEntry, scsiDscLunEntry=scsiDscLunEntry, scsiLuTable=scsiLuTable, scsiDscTgtRowStatus=scsiDscTgtRowStatus, scsiTransportType=scsiTransportType, scsiTgtPortIdentifier=scsiTgtPortIdentifier)
  