JDK-6862064 : incorrect implementation of PKIXParameters.clone()
  • Type: Bug
  • Component: security-libs
  • Sub-Component: java.security
  • Affected Version: 6,6u13
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic,solaris_10
  • CPU: generic,sparc
  • Submitted: 2009-07-19
  • Updated: 2010-09-29
  • Resolved: 2010-02-16
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 6 JDK 7
6u21Fixed 7 b84Fixed
Related Reports
Duplicate :  
Description
1. some of the important attributes are not cloned, such as date.
2. The clone operation should look like:
   copy.certStores = new ArrayList<CertStore>(certStores);
   copy.certPathCheckers = ...

    public Object clone() {
        try {
            Object copy = super.clone();
            // Must clone these because addCertStore, et al. modify them
            if (certStores != null) {
                certStores = new ArrayList<CertStore>(certStores);
            }
            if (certPathCheckers != null) {
                certPathCheckers =
                        new ArrayList<PKIXCertPathChecker>(certPathCheckers);
            }
            return copy;
        } catch (CloneNotSupportedException e) {
            /* Cannot happen */
            throw new InternalError(e.toString());
        }
    }

CrlRevocationChecker.java uses the method.

Comments
EVALUATION fix as suggested.
20-01-2010