Closed Bug 1918279 Opened 2 years ago Closed 2 years ago

cache the results of signature verification to speed up subsequent verifications

Categories

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

enhancement

Tracking

()

RESOLVED FIXED
132 Branch
Tracking Status
firefox132 --- fixed

People

(Reporter: keeler, Assigned: keeler)

References

Details

(Whiteboard: [psm-assigned])

Attachments

(1 external file)

Often during browsing, Firefox will make many connections to the same site, resulting in repeatedly verifying the same certificate (~77% of TLS connections are not resumptions or false start). Re-verifying the signatures in the certificate chain is wasted work, because we already know the signature is good. Furthermore, when we start verifying SCTs, that's even more wasted work verifying signatures. Additionally, if we ever verify a signature on an intermediate, re-verifying that intermediate's signature is again wasted work, regardless of the end-entity certificate.
To reduce this wasted work, I propose we introduce a signature cache that stores the results of signature verifications.

Backed out for causing build bustages on CTLogVerifier.cpp

[task 2024-09-22T20:10:53.337Z] 20:10:53     INFO -  netwerk/dns/PDNSRequestParent.o
[task 2024-09-22T20:10:53.337Z] 20:10:53     INFO -  gmake[4]: Leaving directory '/builds/worker/workspace/obj-build/netwerk/dns'
[task 2024-09-22T20:10:53.529Z] 20:10:53     INFO -  gmake[4]: Entering directory '/builds/worker/workspace/obj-build/security/ct'
[task 2024-09-22T20:10:53.533Z] 20:10:53     INFO -  /builds/worker/fetches/sccache/sccache /builds/worker/fetches/clang/bin/clang++ -isysroot /builds/worker/fetches/MacOSX14.4.sdk -mmacosx-version-min=10.15 -stdlib=libc++ --target=x86_64-apple-darwin -o CTLogVerifier.o -c  -I/builds/worker/workspace/obj-build/dist/stl_wrappers -fvisibility=hidden -fvisibility-inlines-hidden -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fstrict-flex-arrays=1 -DNDEBUG -DTRIMMED=1 -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -DMOZ_SUPPORT_LEAKCHECKING -DSTATIC_EXPORTABLE_JS_API -I/builds/worker/checkouts/gecko/security/ct -I/builds/worker/workspace/obj-build/security/ct -I/builds/worker/workspace/obj-build/dist/include -I/builds/worker/workspace/obj-build/dist/include/nspr -I/builds/worker/workspace/obj-build/dist/include/nss -DMOZILLA_CLIENT -include /builds/worker/workspace/obj-build/mozilla-config.h -fno-rtti -pthread -fno-sized-deallocation -fno-aligned-new -ffunction-sections -fdata-sections -fno-math-errno -fno-exceptions -fPIC -fcrash-diagnostics-dir=/builds/worker/artifacts -gdwarf-4 -Xclang -load -Xclang /builds/worker/workspace/obj-build/build/clang-plugin/libclang-plugin.so -Xclang -add-plugin -Xclang moz-check -O3 -fno-omit-frame-pointer -funwind-tables -Werror -Wall -Wbitfield-enum-conversion -Wempty-body -Wformat-type-confusion -Wignored-qualifiers -Wpointer-arith -Wshadow-field-in-constructor-modified -Wsign-compare -Wtautological-constant-in-range-compare -Wtype-limits -Wno-error=tautological-type-limit-compare -Wunreachable-code -Wunreachable-code-return -Wunused-but-set-parameter -Wno-invalid-offsetof -Wclass-varargs -Wempty-init-stmt -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wloop-analysis -Wno-range-loop-analysis -Wenum-compare-conditional -Wenum-float-conversion -Wno-deprecated-anon-enum-enum-conversion -Wno-deprecated-enum-enum-conversion -Wno-deprecated-this-capture -Wcomma -Wimplicit-fallthrough -Wduplicate-method-arg -Wduplicate-method-match -Wmissing-method-return-type -Wobjc-signed-char-bool -Wsemicolon-before-method-body -Wsuper-class-method-mismatch -Wstring-conversion -Wno-inline-new-delete -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=free-nonheap-object -Wno-error=atomic-alignment -Wno-error=deprecated-builtins -Wformat -Wformat-security -Wno-psabi -Wthread-safety -Werror=unguarded-availability-new -Wno-error=builtin-macro-redefined -Wno-vla-cxx-extension -Wno-unknown-warning-option -Wextra -Wunreachable-code -Wno-unused-parameter -fno-strict-aliasing -ffp-contract=off  -MD -MP -MF .deps/CTLogVerifier.o.pp   /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp
[task 2024-09-22T20:10:53.534Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:33:3: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.534Z] 20:10:53     INFO -     33 |   Result GetCertTrust(EndEntityOrCA, const CertPolicyId&, Input,
[task 2024-09-22T20:10:53.534Z] 20:10:53     INFO -        |   ^
[task 2024-09-22T20:10:53.535Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.535Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.535Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.536Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.536Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.536Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.536Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:38:3: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.537Z] 20:10:53     INFO -     38 |   Result FindIssuer(Input, IssuerChecker&, Time) override {
[task 2024-09-22T20:10:53.537Z] 20:10:53     INFO -        |   ^
[task 2024-09-22T20:10:53.538Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.538Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.538Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.539Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.539Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.539Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.539Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:42:3: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.539Z] 20:10:53     INFO -     42 |   Result CheckRevocation(EndEntityOrCA, const CertID&, Time, Duration,
[task 2024-09-22T20:10:53.540Z] 20:10:53     INFO -        |   ^
[task 2024-09-22T20:10:53.540Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.541Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.541Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.541Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.541Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.542Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.542Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:47:3: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.542Z] 20:10:53     INFO -     47 |   Result IsChainValid(const DERArray&, Time, const CertPolicyId&) override {
[task 2024-09-22T20:10:53.543Z] 20:10:53     INFO -        |   ^
[task 2024-09-22T20:10:53.543Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.544Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.544Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.544Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.544Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.544Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.545Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:51:3: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.545Z] 20:10:53     INFO -     51 |   Result DigestBuf(Input, DigestAlgorithm, uint8_t*, size_t) override {
[task 2024-09-22T20:10:53.546Z] 20:10:53     INFO -        |   ^
[task 2024-09-22T20:10:53.546Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.546Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.547Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.547Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.547Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.547Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.548Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:55:3: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.548Z] 20:10:53     INFO -     55 |   Result CheckSignatureDigestAlgorithm(DigestAlgorithm, EndEntityOrCA,
[task 2024-09-22T20:10:53.549Z] 20:10:53     INFO -        |   ^
[task 2024-09-22T20:10:53.549Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.549Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.550Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.550Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.550Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.551Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.551Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:60:3: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.551Z] 20:10:53     INFO -     60 |   Result CheckECDSACurveIsAcceptable(EndEntityOrCA, NamedCurve curve) override {
[task 2024-09-22T20:10:53.552Z] 20:10:53     INFO -        |   ^
[task 2024-09-22T20:10:53.552Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.552Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.553Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.553Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.553Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.554Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.554Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:70:3: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.554Z] 20:10:53     INFO -     70 |   Result VerifyECDSASignedData(Input, DigestAlgorithm, Input, Input) override {
[task 2024-09-22T20:10:53.555Z] 20:10:53     INFO -        |   ^
[task 2024-09-22T20:10:53.555Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.556Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.556Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.556Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.556Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.557Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.557Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:74:3: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.557Z] 20:10:53     INFO -     74 |   Result CheckRSAPublicKeyModulusSizeInBits(
[task 2024-09-22T20:10:53.557Z] 20:10:53     INFO -        |   ^
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.558Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:86:3: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -     86 |   Result VerifyRSAPKCS1SignedData(Input, DigestAlgorithm, Input,
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -        |   ^
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.558Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:91:3: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -     91 |   Result VerifyRSAPSSSignedData(Input, DigestAlgorithm, Input, Input) override {
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -        |   ^
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.558Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.559Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.559Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:95:3: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.559Z] 20:10:53     INFO -     95 |   Result CheckValidityIsAcceptable(Time, Time, EndEntityOrCA,
[task 2024-09-22T20:10:53.559Z] 20:10:53     INFO -        |   ^
[task 2024-09-22T20:10:53.560Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.560Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.560Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.561Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.561Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.561Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.561Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:100:3: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.562Z] 20:10:53     INFO -    100 |   Result NetscapeStepUpMatchesServerAuth(Time, bool&) override {
[task 2024-09-22T20:10:53.562Z] 20:10:53     INFO -        |   ^
[task 2024-09-22T20:10:53.562Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.562Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.562Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.563Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.563Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.563Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.564Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:35:12: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.564Z] 20:10:53     INFO -     35 |     return Result::FATAL_ERROR_LIBRARY_FAILURE;
[task 2024-09-22T20:10:53.564Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.565Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.565Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.565Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.565Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.566Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.566Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.566Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:39:12: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.566Z] 20:10:53     INFO -     39 |     return Result::FATAL_ERROR_LIBRARY_FAILURE;
[task 2024-09-22T20:10:53.566Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.566Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.567Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.568Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.568Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.568Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.568Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.570Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:44:12: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.575Z] 20:10:53     INFO -     44 |     return Result::FATAL_ERROR_LIBRARY_FAILURE;
[task 2024-09-22T20:10:53.576Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.576Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.577Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.577Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.577Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.577Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.577Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.578Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:48:12: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.578Z] 20:10:53     INFO -     48 |     return Result::FATAL_ERROR_LIBRARY_FAILURE;
[task 2024-09-22T20:10:53.578Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.579Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.579Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.579Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.580Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.580Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.580Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.581Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:52:12: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.581Z] 20:10:53     INFO -     52 |     return Result::FATAL_ERROR_LIBRARY_FAILURE;
[task 2024-09-22T20:10:53.582Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.582Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.582Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.583Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.583Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.584Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.584Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.585Z] 20:10:53    ERROR -  /builds/worker/checkouts/gecko/security/ct/CTLogVerifier.cpp:57:12: error: reference to 'Result' is ambiguous
[task 2024-09-22T20:10:53.586Z] 20:10:53     INFO -     57 |     return Result::FATAL_ERROR_LIBRARY_FAILURE;
[task 2024-09-22T20:10:53.586Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.587Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nsGlobalWindowOuter.h:86:7: note: candidate found by name lookup is 'mozilla::Result'
[task 2024-09-22T20:10:53.587Z] 20:10:53     INFO -     86 | class Result;
[task 2024-09-22T20:10:53.588Z] 20:10:53     INFO -        |       ^
[task 2024-09-22T20:10:53.588Z] 20:10:53     INFO -  /builds/worker/workspace/obj-build/dist/include/nss/mozpkix/Result.h:193:12: note: candidate found by name lookup is 'mozilla::pkix::Result'
[task 2024-09-22T20:10:53.589Z] 20:10:53     INFO -    193 | enum class Result {
[task 2024-09-22T20:10:53.590Z] 20:10:53     INFO -        |            ^
[task 2024-09-22T20:10:53.590Z] 20:10:53     INFO -  fatal error: too many errors emitted, stopping now [-ferror-limit=]
[task 2024-09-22T20:10:53.591Z] 20:10:53     INFO -  20 errors generated.
[task 2024-09-22T20:10:53.591Z] 20:10:53    ERROR -  gmake[4]: *** [/builds/worker/checkouts/gecko/config/rules.mk:676: CTLogVerifier.o] Error 1

Flags: needinfo?(dkeeler)
Flags: needinfo?(dkeeler)
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 132 Branch
Blocks: 1372418
Regressions: 1934733
No longer regressions: 1934733
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: