[external/conscrypt] Prevent duplicate certificates in TrustedCertificateIndex
With the separate caching of intermediate certificates in TrustManagerImpl a given intermediate may be passed into .index multiple times. Avoid adding the certificate to the list each time. (cherry-picked from commit d080e064abba665e2dde2a8c113f837ba4d9a85e) Bug: 26232830 Change-Id: I6bed2c65d9e42e052b9b1b129200a997e7dca745 (cherry picked from commit 4c9f9c2201116acf790fca25af43995d29980ee0)
This commit is contained in:
@ -68,6 +68,15 @@ public final class TrustedCertificateIndex {
|
||||
if (anchors == null) {
|
||||
anchors = new ArrayList<TrustAnchor>(1);
|
||||
subjectToTrustAnchors.put(subject, anchors);
|
||||
} else {
|
||||
// Avoid indexing the same certificate multiple times
|
||||
if (cert != null) {
|
||||
for (TrustAnchor entry : anchors) {
|
||||
if (cert.equals(entry.getTrustedCert())) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
anchors.add(anchor);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user