// Copyright (c) 2009 DMTF.  All rights reserved.
   [Version ( "2.22.0" ), 
    UMLPackagePath ( "CIM::Network::ConsoleProtocols" ), 
    Description ( 
       "A representation of the SettingData of an SSH endpoint." )]
class CIM_SSHSettingData : CIM_SettingData {

      [Write, Description ( 
          "An array of integers indicating the version or versions "
          "of SSH protocol that will be enabled for the SSH "
          "endpoint." ), 
       ValueMap { "0", "1", "2", "3", "..", "32768..65535" }, 
       Values { "Unknown", "Other", "SSHv1", "SSHv2", 
          "DMTF Reserved", "Vendor Reserved" }, 
       ModelCorrespondence { 
          "CIM_SSHSettingData.OtherEnabledSSHVersion" }]
   uint16 EnabledSSHVersions[];

      [Write, Description ( 
          "When the EnabledSSHVersions property contains a value of "
          "1, \"Other\" then this is a free form string providing "
          "more information about the SSH protocol. If not set to "
          "1, this string has no meaning." ), 
       ModelCorrespondence { "CIM_SSHSettingData.EnabledSSHVersions" }]
   string OtherEnabledSSHVersion;

      [Write, Description ( 
          "The version of SSH that will be in use if this "
          "SettingData is applied." ), 
       ValueMap { "0", "1", "2", "3", "..", "32768..65535" }, 
       Values { "Unknown", "Other", "SSHv1", "SSHv2", 
          "DMTF Reserved", "Vendor Reserved" }, 
       ModelCorrespondence { "CIM_SSHSettingData.OtherSSHVersion", 
          "CIM_SSHSettingData.EnabledSSHVersions" }]
   uint16 SSHVersion;

      [Write, Description ( 
          "If the CurrentSSHVersion property is set to 1, \"Other\" "
          "then this is a free form string providing more "
          "information about the current SSH protocol. If not set "
          "to 1, this string has no meaning." ), 
       ArrayType ( "Indexed" ), 
       ModelCorrespondence { "CIM_SSHSettingData.SSHVersion", 
          "CIM_SSHSettingData.OtherEnabledSSHVersion" }]
   string OtherSSHVersion[];

      [Write, Description ( 
          "An array of integers indicating the encryption "
          "algorithms that are enabled for this SSH service. Its "
          "possible for an encryption algorithm to be supported and "
          "not currently enabled to be used." ), 
       ValueMap { "0", "1", "2", "3", "4", "5", "6", "..", 
          "32768..65535" }, 
       Values { "Unknown", "Other", "DES", "DES3", "RC4", "IDEA", 
          "SKIPJACK", "DMTF Reserved", "Vendor Reserved" }, 
       ArrayType ( "Indexed" ), 
       ModelCorrespondence { 
          "CIM_SSHSettingData.OtherEnabledEncryptionAlgorithm" }]
   uint16 EnabledEncryptionAlgorithms[];

      [Write, Description ( 
          "If the EnabledEncryptionAlgorithms property is set 1, "
          "\"Other\" this property contains a free form string "
          "providing more information about supported algorithms. "
          "If not set to 1, this string has no meaning." ), 
       ArrayType ( "Indexed" ), 
       ModelCorrespondence { 
          "CIM_SSHProtocolEndpoint.EnabledEncryptionAlgorithms" }]
   string OtherEnabledEncryptionAlgorithm[];

      [Write, Description ( 
          "The encryption algorithm that will be in use if this "
          "SettingData is applied." ), 
       ValueMap { "0", "1", "2", "3", "4", "5", "6", ".." }, 
       Values { "Unknown", "Other", "DES", "DES3", "RC4", "IDEA", 
          "SKIPJACK", "DMTF Reserved" }, 
       ModelCorrespondence { 
          "CIM_SSHSettingData.OtherEncryptionAlgorithm", 
          "CIM_SSHProtocolEndpoint.EnabledEncryptionAlgorithms" }]
   uint16 EncryptionAlgorithm;

      [Write, Description ( 
          "If the EncryptionAlgorithm property is set 1, \"Other\" "
          "then this is a free form string providing more "
          "information about the encryption algorithm in use. If "
          "not set to 1, this string has no meaning." ), 
       ModelCorrespondence { 
          "CIM_SSHSettingData.EncryptionAlgorithm", 
          "CIM_SSHSettingData.OtherEnabledEncryptionAlgorithm" }]
   string OtherEncryptionAlgorithm;

      [Write, Description ( 
          "IdleTimeout specifies how long the connection can be "
          "idle before the connection is terminated. The default "
          "value, 0, indicates that there is no idle timeout "
          "period." ), 
       Units ( "Seconds" ), 
       PUnit ( "second" )]
   uint32 IdleTimeout = 0;

      [Write, Description ( 
          "If this property is true, the SSH keep alive timer is enabled."
           )]
   boolean KeepAlive = false;

      [Write, Description ( 
          "If this property is true, the SSH X11 forwarding mode is enabled."
           )]
   boolean ForwardX11 = false;

      [Write, Description ( 
          "If this property is true, SSH compression is enabled." )]
   boolean Compression = true;


};
