Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/security/manager/ssl/   (Firefox Browser Version 153.0.1©)  Datei vom 27.6.2026 mit Größe 8 kB image not shown  

Quelle  moz.build   Sprache: unbekannt

 
Spracherkennung für: .build vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

DIRS += ["abridged_certs", "pdf_trust_anchors", "qwac_trust_anchors"]

TEST_DIRS += ["tests"]

XPIDL_SOURCES += [
    "nsICertificateDialogs.idl",
    "nsICertOverrideService.idl",
    "nsICertStorage.idl",
    "nsICertTree.idl",
    "nsIClientAuthDialogService.idl",
    "nsIClientAuthRememberService.idl",
    "nsIContentSignatureVerifier.idl",
    "nsICryptoHash.idl",
    "nsIDataStorage.idl",
    "nsIFIPSUtils.idl",
    "nsINSSComponent.idl",
    "nsINSSErrorsService.idl",
    "nsINSSVersion.idl",
    "nsIOSKeyStore.idl",
    "nsIOSReauthenticator.idl",
    "nsIPKCS11Module.idl",
    "nsIPKCS11ModuleDB.idl",
    "nsIPKCS11Slot.idl",
    "nsIPKCS11Token.idl",
    "nsIPublicKeyPinningService.idl",
    "nsISecretDecoderRing.idl",
    "nsISecurityUITelemetry.idl",
    "nsISiteIntegrityService.idl",
    "nsISiteSecurityService.idl",
    "nsITLSSocketControl.idl",
    "nsITransportSecurityInfo.idl",
    "nsIX509Cert.idl",
    "nsIX509CertDB.idl",
    "nsIX509CertValidity.idl",
]

if CONFIG["ENABLE_TESTS"]:
    XPIDL_SOURCES += ["nsISSLTokensCacheTest.idl"]

XPIDL_MODULE = "pipnss"

XPCOM_MANIFESTS += [
    "components.conf",
]

EXTRA_JS_MODULES.psm += [
    "ClientAuthDialogService.sys.mjs",
    "DER.sys.mjs",
    "QWACs.sys.mjs",
    "RemoteSecuritySettings.sys.mjs",
    "X509.sys.mjs",
]

EXPORTS += [
    "CommonSocketControl.h",
    "CryptoTask.h",
    "EnterpriseRoots.h",
    "nsClientAuthRemember.h",
    "nsNSSCallbacks.h",
    "nsNSSCertificate.h",
    "nsNSSComponent.h",
    "nsNSSHelper.h",
    "nsRandomGenerator.h",
    "nsSecureBrowserUI.h",
    "nsSecurityHeaderParser.h",
    "NSSErrorsService.h",
    "nsSSLSocketProvider.h",
    "nsTLSSocketProvider.h",
    "RootCertificateTelemetryUtils.h",
    "ScopedNSSTypes.h",
    "SharedCertVerifier.h",
    "SSLServerCertVerification.h",
    "TransportSecurityInfo.h",
]

EXPORTS.mozilla += [
    "crypto_hash/crypto_hash_sha2.h",
    "PublicSSL.h",
]

EXPORTS.mozilla.psm += [
    "EnabledSignatureSchemes.h",
    "IPCClientCertsChild.h",
    "IPCClientCertsParent.h",
    "PSMIPCUtils.h",
    "SelectTLSClientAuthCertChild.h",
    "SelectTLSClientAuthCertParent.h",
    "TransportSecurityInfo.h",
    "VerifySSLServerCertChild.h",
    "VerifySSLServerCertParent.h",
]

UNIFIED_SOURCES += [
    "AppSignatureVerification.cpp",
    "AppTrustDomain.cpp",
    "CertStorageMemoryReporting.cpp",
    "CommonSocketControl.cpp",
    "ContentSignatureVerifier.cpp",
    "CryptoTask.cpp",
    "DataStorageManager.cpp",
    "EnterpriseRoots.cpp",
    "FIPSUtils.cpp",
    "IPCClientCertsChild.cpp",
    "IPCClientCertsParent.cpp",
    "md4.c",
    "nsCertOverrideService.cpp",
    "nsCertTree.cpp",
    "nsNSSCallbacks.cpp",
    "nsNSSCertHelper.cpp",
    "nsNSSCertificate.cpp",
    "nsNSSCertificateDB.cpp",
    "nsNSSCertTrust.cpp",
    "nsNSSComponent.cpp",
    "nsNSSIOLayer.cpp",
    "nsNSSModule.cpp",
    "nsNSSVersion.cpp",
    "nsNTLMAuthModule.cpp",
    "nsPKCS12Blob.cpp",
    "nsRandomGenerator.cpp",
    "nsSecureBrowserUI.cpp",
    "nsSecurityHeaderParser.cpp",
    "NSSErrorsService.cpp",
    "nsSiteSecurityService.cpp",
    "NSSKeyStore.cpp",
    "nsSSLSocketProvider.cpp",
    "NSSSocketControl.cpp",
    "nsTLSSocketProvider.cpp",
    "OSKeyStore.cpp",
    "PDFSignatureVerification.cpp",
    "PDFTrustDomain.cpp",
    "PKCS11Module.cpp",
    "PKCS11ModuleDB.cpp",
    "PKCS11Slot.cpp",
    "PKCS11Token.cpp",
    "PublicKeyPinningService.cpp",
    "QWACs.cpp",
    "QWACTrustDomain.cpp",
    "RootCertificateTelemetryUtils.cpp",
    "SecretDecoderRing.cpp",
    "SiteIntegrityService.cpp",
    "SSLServerCertVerification.cpp",
    "TLSClientAuthCertSelection.cpp",
    "TransportSecurityInfo.cpp",
    "VerifySSLServerCertChild.cpp",
    "VerifySSLServerCertParent.cpp",
    "X509CertValidity.cpp",
]

if CONFIG["OS_ARCH"] == "Darwin":
    # On macOS this file includes CoreFoundation.h, which contains definitions
    # that conflict with headers included in other unified source files. We
    # compile this one independently to prevent that interference.
    SOURCES += [
        "nsClientAuthRemember.cpp",
    ]
else:
    UNIFIED_SOURCES += [
        "nsClientAuthRemember.cpp",
    ]

if CONFIG["OS_ARCH"] == "WINNT":
    # On Windows this file includes ntsecapi.h, which contains definitions that
    # conflict with headers included in other unified source files. We compile
    # this one independently to prevent that interference.
    SOURCES += [
        "OSReauthenticator.cpp",
    ]
else:
    UNIFIED_SOURCES += [
        "OSReauthenticator.cpp",
    ]

if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
    UNIFIED_SOURCES += [
        "LibSecret.cpp",
    ]
    CFLAGS += CONFIG["GLIB_CFLAGS"]
    CXXFLAGS += CONFIG["GLIB_CFLAGS"]
    CFLAGS += CONFIG["MOZ_GTK3_CFLAGS"]
    CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"]

if CONFIG["TARGET_KERNEL"] == "Darwin":
    UNIFIED_SOURCES += [
        "KeychainSecret.cpp",
        "OSReauthenticatorDarwin.mm",
    ]
    OS_LIBS += [
        "-framework CoreFoundation",
        "-framework LocalAuthentication",
        "-framework Security",
    ]

IPDL_SOURCES += [
    "PIPCClientCerts.ipdl",
    "PSelectTLSClientAuthCert.ipdl",
    "PSMIPCTypes.ipdlh",
    "PVerifySSLServerCert.ipdl",
]

# Required by OSClientCerts, IPCClientCerts and CredentialManagerSecret.
if CONFIG["OS_ARCH"] == "WINNT":
    OS_LIBS += [
        "advapi32",
        "bcrypt",
        "credui",
        "crypt32",
        "kernel32",
        "ncrypt",
        "ntdll",
        "synchronization",
        "userenv",
        "ws2_32",
    ]

    UNIFIED_SOURCES += [
        "CredentialManagerSecret.cpp",
    ]

if CONFIG["NIGHTLY_BUILD"] and not CONFIG["MOZ_NO_SMART_CARDS"]:
    EXPORTS.mozilla.psm += [
        "PKCS11ModuleChild.h",
        "PKCS11ModuleParent.h",
    ]

    UNIFIED_SOURCES += [
        "PKCS11ModuleChild.cpp",
        "PKCS11ModuleParent.cpp",
    ]

    IPDL_SOURCES += [
        "PPKCS11Module.ipdl",
    ]

FINAL_LIBRARY = "xul"

LOCAL_INCLUDES += [
    "!/dist/public/nss",
    "/dom/base",
    "/dom/crypto",
    "/netwerk/base",
    "/security/certverifier",
    "/third_party/rust/cose-c/include",
    "/xpcom/base",
    "/xpcom/build",
]

GeneratedFile(
    "nsSTSPreloadListGenerated.inc",
    script="../../../xpcom/ds/tools/make_dafsa.py",
    inputs=["nsSTSPreloadList.inc"],
)

DEFINES["SSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES"] = "True"
DEFINES["NSS_ENABLE_ECC"] = "True"
if CONFIG["MOZ_SYSTEM_NSS"]:
    DEFINES["MOZ_SYSTEM_NSS"] = True

# mozpkix is linked statically from the in-tree sources independent of whether
# system NSS is used or not.
USE_LIBS += ["mozpkix"]

include("/ipc/chromium/chromium-config.mozbuild")

if CONFIG["CC_TYPE"] in ("clang", "gcc"):
    COMPILE_FLAGS["WARNINGS_CXXFLAGS"] += [
        "-Wextra",
        # -Wextra enables this warning, but it's too noisy to be useful.
        "-Wno-missing-field-initializers",
    ]

    # Gecko headers aren't warning-free enough for us to enable these warnings.
    CXXFLAGS += [
        "-Wno-unused-parameter",
    ]

headers_arrays_certs = [
    (
        "xpcshell.inc",
        "xpcshellRoots",
        [
            "tests/unit/test_signed_apps/xpcshellTestRoot.pem",
            "tests/unit/test_signed_apps/xpcshellTestRoot2.pem",
        ],
    ),
    ("addons-public.inc", "addonsPublicRoots", ["addons-public.pem"]),
    (
        "addons-public-intermediate.inc",
        "addonsPublicIntermediates",
        [
            "addons-public-intermediate.pem",
            "addons-public-2018-intermediate.pem",
        ],
    ),
    ("addons-stage.inc", "addonsStageRoots", ["addons-stage.pem"]),
    (
        "addons-stage-intermediate.inc",
        "addonsStageIntermediates",
        ["addons-stage-intermediate.pem"],
    ),
    (
        "content-signature-prod.inc",
        "contentSignatureProdRoots",
        ["content-signature-prod.pem"],
    ),
    (
        "content-signature-stage.inc",
        "contentSignatureStageRoots",
        ["content-signature-stage.pem"],
    ),
    # The dev root is the same as the stage root.
    (
        "content-signature-dev.inc",
        "contentSignatureDevRoots",
        ["content-signature-stage.pem"],
    ),
    (
        "content-signature-local.inc",
        "contentSignatureLocalRoots",
        ["content-signature-local.pem"],
    ),
]

for header, array_name, certs in headers_arrays_certs:
    GeneratedFile(
        header,
        script="gen_cert_header.py",
        entry_point="generate",
        inputs=certs,
        flags=[array_name],
    )

[Dauer der Verarbeitung: 0.18 Sekunden, vorverarbeitet 2026-08-25]