
 
        Sets the pathToNames criterion. The 
X509Certificate must
 not include name constraints that would prohibit building a
 path to the specified names.
 
 This method allows the caller to specify, with a single method call,
 the complete set of names which the X509Certificates's
 name constraints must permit. The specified value replaces
 the previous value for the pathToNames criterion.
 
 This constraint is useful when building a certification path forward 
 (from the target toward the trust anchor. If a partial path has been 
 built, any candidate certificate must not include name constraints that
 would prohibit building a path to any of the names in the partial path.
 
 The names parameter (if not null) is a
 Collection with one
 entry for each name to be included in the pathToNames
 criterion. Each entry is a List whose first entry is an
 Integer (the name type, 0-8) and whose second
 entry is a String or a byte array (the name, in
 string or ASN.1 DER encoded form, respectively).
 There can be multiple names of the same type. If null
 is supplied as the value for this argument, no
 pathToNames check will be performed.
 
 Each name in the Collection
 may be specified either as a String or as an ASN.1 encoded
 byte array. For more details about the formats used, see
 addPathToName(int type, String name) and
 addPathToName(int type, byte [] name).
 
 Note: for distinguished names, specify the byte
 array form instead of the String form. See the note in
 X509CertSelector.addPathToName(int, String) for more information. 
 
 Note that the names parameter can contain duplicate
 names (same name and name type), but they may be removed from the
 Collection of names returned by the
 getPathToNames method.
 
 Note that a deep copy is performed on the Collection to
 protect against subsequent modifications.
        
        
Parameters:
 - names - a Collection with one entry per name
              (or null)
Throws:
  - IOException - if a parsing error occurs
See Also:
  X509CertSelector.getPathToNames(),