// Copyright (c) 2005 DMTF.  All rights reserved.
   [Version ( "2.8.0" ), 
    UMLPackagePath ( "CIM::Network::IPsec" ), 
    Description ( 
       "The IPCOMPTransform specifies the IP compression algorithm to "
       "use for payload of the Security Association." ), 
    MappingStrings { "IPSP Model.IETF|IPCOMPTransform" }]
class CIM_IPCOMPTransform : CIM_SATransform {

      [Description ( 
          "The Algorithm is an enumeration that designates the "
          "IPCOMP compression algorithm to use. Its values are "
          "generated from RFC2407, Section 4.4.5. Note that the "
          "values are modified from the RFC, since \'Other\' must "
          "be taken into account." ), 
       ValueMap { "1", "2", "3", "4" }, 
       Values { "Other", "Vendor Algorithm/OUI", "DEFLATE", "LZS" }, 
       MappingStrings { "IPSP Model.IETF|IPCOMPTransform.Algorithm", 
          "RFC2407.IETF|Section 4.4.5" }, 
       ModelCorrespondence { "CIM_IPCOMPTransform.PrivateAlgorithm", 
          "CIM_IPCOMPTransform.OtherAlgorithm" }]
   uint16 Algorithm;

      [Description ( 
          "Description of the compression algorithm when the value "
          "1 (\"Other\") is specified for the property, Algorithm." ), 
       ModelCorrespondence { "CIM_IPCOMPTransform.Algorithm" }]
   string OtherAlgorithm;

      [Description ( 
          "A private compression algorithm, used when the Algorithm "
          "property is set to 2, \"Vendor Algorithm/OUI\"." ), 
       MappingStrings { 
          "IPSP Model.IETF|IPCOMPTransform.PrivateAlgorithm" }, 
       ModelCorrespondence { "CIM_IPCOMPTransform.Algorithm" }]
   uint32 PrivateAlgorithm;

      [Description ( 
          "DictionarySize is an optional field that specifies the "
          "log2 maximum size of the dictionary for the compression "
          "algorithm. For dictionaries that have a fixed size, this "
          "value is ignored." ), 
       MappingStrings { 
          "IPSP Model.IETF|IPCOMPTransform.DictionarySize" }]
   uint16 DictionarySize;


};
