// Copyright (c) 2005 DMTF.  All rights reserved.
   [Version ( "2.11.0" ), 
    UMLPackagePath ( "CIM::Network::iSCSI" ), 
    Description ( 
       "This class contains the attributes of and negotiated values "
       "for, an iSCSI Connection which is modeled as a subclass of "
       "NetworkPipe. The original settings that are a starting point "
       "for negotiation are found in the class "
       "iSCSIConnectionSettings." )]
class CIM_iSCSIConnection : CIM_NetworkPipe {

      [Description ( "The iSCSI Connection ID for this connection." ), 
       MinValue ( 1 ), 
       MaxValue ( 65535 ), 
       MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiCxnCid" }]
   uint32 ConnectionID;

      [Description ( 
          "The maximum data payload size supported for command or "
          "data PDUs able to be received on this connection." ), 
       Units ( "Bytes" ), 
       MinValue ( 512 ), 
       MaxValue ( 16777215 ), 
       MappingStrings { 
          "MIB.IETF|iSCSI-MIB.iscsiCxnMaxRecvDataSegLength" }, 
       ModelCorrespondence { 
          "CIM_iSCSIConnectionSettings.MaxReceiveDataSegmentLength" }]
   uint32 MaxReceiveDataSegmentLength;

      [Description ( 
          "The maximum data payload size supported for command or "
          "data PDUs to be sent on this connection." ), 
       Units ( "Bytes" ), 
       MinValue ( 512 ), 
       MaxValue ( 16777215 ), 
       MappingStrings { 
          "MIB.IETF|iSCSI-MIB.iscsiCxnMaxXmitDataSegLength" }]
   uint32 MaxTransmitDataSegmentLength;

      [Description ( 
          "This property identifies the iSCSI header digest scheme "
          "in use within this connection." ), 
       ValueMap { "1", "2", "3" }, 
       Values { "Other", "No Digest", "CRC32C" }, 
       MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiCxnHeaderIntegrity" }, 
       ModelCorrespondence { 
          "CIM_iSCSIConnectionSettings.PrimaryHeaderDigestMethod", 
          "CIM_iSCSIConnectionSettings.SecondaryHeaderDigestMethod", 
          "CIM_iSCSIConnection.OtherHeaderDigestMethod" }]
   uint16 HeaderDigestMethod;

      [Description ( 
          "A string describing the Header Digest scheme in use when "
          "HeaderDigestMethod is equal to the value 1, \"Other\"." ), 
       ModelCorrespondence { 
          "CIM_iSCSIConnectionSettings.OtherPrimaryHeaderDigestMethod", 
          "CIM_iSCSIConnectionSettings.OtherSecondaryHeaderDigestMethod", 
          "CIM_iSCSIConnection.HeaderDigestMethod" }]
   string OtherHeaderDigestMethod;

      [Description ( 
          "This property identifies the iSCSI data digest scheme in "
          "use within this connection." ), 
       ValueMap { "1", "2", "3" }, 
       Values { "Other", "No Digest", "CRC32C" }, 
       MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiCxnDataIntegrity" }, 
       ModelCorrespondence { 
          "CIM_iSCSIConnectionSettings.PrimaryHeaderDigestMethod", 
          "CIM_iSCSIConnectionSettings.SecondaryHeaderDigestMethod", 
          "CIM_iSCSIConnection.OtherDataDigestMethod" }]
   uint16 DataDigestMethod;

      [Description ( 
          "A string describing the Data Digest scheme in use when "
          "DataDigestMethod is equal to the value 1, \"Other\"." ), 
       ModelCorrespondence { 
          "CIM_iSCSIConnectionSettings.OtherPrimaryDataDigestMethod", 
          "CIM_iSCSIConnectionSettings.OtherSecondaryDataDigestMethod", 
          "CIM_iSCSIConnection.DataDigestMethod" }]
   string OtherDataDigestMethod;

      [Description ( 
          "This property indicates whether or not this connection "
          "is receiving markers in in its incoming data stream." ), 
       MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiCxnRecvMarker" }, 
       ModelCorrespondence { 
          "CIM_iSCSIConnectionSettings.RequestingMarkersOnReceive" }]
   boolean ReceivingMarkers;

      [Description ( 
          "This property indicates whether or not this connection "
          "is inserting markers in in its outgoing data stream." ), 
       MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiCxnSendMarker" }]
   boolean SendingMarkers;

      [Description ( 
          "Active version number of the iSCSI specification "
          "negotiated on this connection." ), 
       MappingStrings { "MIB.IETF|iSCSI-MIB.iscsiCxnVersionActive" }, 
       ModelCorrespondence { 
          "CIM_iSCSICapabilities.MinimumSpecificationVersionSupported", 
          "CIM_iSCSICapabilities.MaximumSpecificationVersionSupported" }]
   boolean ActiveiSCSIVersion;

      [Description ( 
          "The authentication method being used on this connection, "
          "as communicated during the login phase." ), 
       ValueMap { "2", "3", "4", "5" }, 
       Values { "No Authentication", "SRP", "CHAP", "Kerberos" }, 
       MappingStrings { "MIB.IETF|IPS-AUTH-MIB.ipsAuthCredAuthMethod" }, 
       ModelCorrespondence { 
          "CIM_iSCSIConnectionSettings.PrimaryAuthenticationMethod", 
          "CIM_iSCSIConnectionSettings.SecondaryAuthenticationMethod", 
          "CIM_iSCSICapabilities.AuthenticationMethodsSupported" }]
   uint16 AuthenticationMethodUsed;

      [Description ( 
          "This property when true, indicates that the Target was "
          "required to authenticate itself to the Initiator, in "
          "addition to the Initiator authenticating itself to the "
          "Target. When false, and AuthenticationMethod is other "
          "than \'No Authentication\', only the Initatior "
          "authenticated itself to the Target. \n"
          "When AuthenticationMethodUsed is \'No Authentication\', "
          "this property must be false." )]
   boolean MutualAuthentication;


};
