Closed Bug 1397471 Opened 7 years ago Closed 7 years ago

nsNSSCertificateDB::GetCerts doesn't wait until the loadable roots have been loaded

Categories

(Core :: Security: PSM, enhancement, P1)

enhancement

Tracking

()

RESOLVED FIXED
mozilla57
Tracking Status
firefox57 --- fixed

People

(Reporter: keeler, Assigned: keeler)

References

Details

(Whiteboard: [psm-assigned])

Attachments

(1 file)

nsNSSCertificateDB::GetCerts (the implementation of nsIX509CertDB.getCerts) doesn't wait until the loadable roots module has been loaded. Consequently, it can return an incomplete list of certificates. Presumably the psm_CertDB.Test gtest isn't failing right now because it isn't run first in the overall test suite, meaning the background root loading task has time to finish before the test runs.
Comment on attachment 8905266 [details]
bug 1397471 - nsNSSCertificateDB::GetCerts needs to wait until the loadable roots have been loaded

https://reviewboard.mozilla.org/r/177064/#review182362

Nice catch. Your gtest hypothesis seems correct - if I only run the PSM gtests, psm_CertDB.Test fails without the changes here.
Attachment #8905266 - Flags: review?(cykesiopka.bmo) → review+
Pushed by dkeeler@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/75e4a2e29296
nsNSSCertificateDB::GetCerts needs to wait until the loadable roots have been loaded r=Cykesiopka
Thanks! Not really sure what to do to catch things like this in the future. I suppose we could have a chunked/randomized gtest job to ensure that the order of tests doesn't matter?
https://hg.mozilla.org/mozilla-central/rev/75e4a2e29296
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla57
You need to log in before you can comment on or make changes to this bug.