gecko-dev/netwerk/dns/moz.build

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

112 строки
2.5 KiB
Plaintext
Исходник Обычный вид История

# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# 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/.
with Files("**"):
BUG_COMPONENT = ("Core", "Networking: DNS")
DIRS += ["mdns", "tests"]
XPIDL_SOURCES += [
"nsIDNSByTypeRecord.idl",
"nsIDNSListener.idl",
"nsIDNSRecord.idl",
"nsIDNSResolverInfo.idl",
"nsIDNSService.idl",
"nsIEffectiveTLDService.idl",
"nsIIDNService.idl",
"nsINativeDNSResolverOverride.idl",
"nsPIDNSService.idl",
]
XPIDL_MODULE = "necko_dns"
EXTRA_JS_MODULES["netwerk-dns"] += [
"PublicSuffixList.jsm",
]
XPCSHELL_TESTS_MANIFESTS += ["tests/unit/xpcshell.ini"]
EXPORTS += [
"nsEffectiveTLDService.h",
]
EXPORTS.mozilla.net += [
"ChildDNSService.h",
"DNS.h",
"DNSByTypeRecord.h",
"DNSListenerProxy.h",
"DNSRequestBase.h",
"DNSRequestChild.h",
"DNSRequestParent.h",
"HTTPSSVC.h",
"IDNBlocklistUtils.h",
"NativeDNSResolverOverrideChild.h",
"NativeDNSResolverOverrideParent.h",
bug 1434852 - introducing TRR (DOH); r=mcmanus,valentin Provides an optional resolver mechanism for Firefox that allows running together with or instead of the native resolver. TRR offers resolving of host names using a dedicated DNS-over-HTTPS server (HTTPS is required, HTTP/2 is preferable). DNS-over-HTTPS (DOH) allows DNS resolves with enhanced privacy, secure transfers and improved performance. To keep the failure rate at a minimum, the TRR system manages a dynamic persistent blacklist for host names that can't be resolved with DOH but works with the native resolver. Blacklisted entries will not be retried over DOH for a couple of days. "localhost" and names in the ".local" TLD will not be resolved via DOH. TRR is preffed OFF by default and you need to set a URI for an available DOH server to be able to use it. Since the URI for DOH is set with a name itself, it may have to use the native resolver for bootstrapping. (Optionally, the user can set the IP address of the DOH server in a pref to avoid the required initial native resolve.) When TRR starts up, it will first verify that it works by checking a "confirmation" domain name. This confirmation domain is a pref by default set to "example.com". TRR will also by default await the captive-portal detection to raise its green flag before getting activated. All prefs for TRR are under the "network.trr" hierarchy. The DNS-over-HTTPS spec: https://tools.ietf.org/html/draft-ietf-doh-dns-over-https-03 MozReview-Commit-ID: GuuU6vjTjlm --HG-- extra : rebase_source : 53fcca757334090ac05fec540ef29d109d5ceed3
2018-02-01 12:20:49 +03:00
"TRRService.h",
"TRRServiceBase.h",
"TRRServiceChild.h",
"TRRServiceParent.h",
]
SOURCES += [
"GetAddrInfo.cpp", # Undefines UNICODE
"nsEffectiveTLDService.cpp", # Excluded from UNIFIED_SOURCES due to special build flags.
]
UNIFIED_SOURCES += [
"ChildDNSService.cpp",
"DNS.cpp",
"DNSListenerProxy.cpp",
"DNSPacket.cpp",
"DNSRequestChild.cpp",
"DNSRequestParent.cpp",
"DNSResolverInfo.cpp",
"DNSUtils.cpp",
"HTTPSSVC.cpp",
"IDNBlocklistUtils.cpp",
"NativeDNSResolverOverrideChild.cpp",
"NativeDNSResolverOverrideParent.cpp",
"nsDNSService2.cpp",
"nsHostRecord.cpp",
"nsHostResolver.cpp",
"nsIDNService.cpp",
"ODoH.cpp",
"ODoHService.cpp",
"punycode.c",
bug 1434852 - introducing TRR (DOH); r=mcmanus,valentin Provides an optional resolver mechanism for Firefox that allows running together with or instead of the native resolver. TRR offers resolving of host names using a dedicated DNS-over-HTTPS server (HTTPS is required, HTTP/2 is preferable). DNS-over-HTTPS (DOH) allows DNS resolves with enhanced privacy, secure transfers and improved performance. To keep the failure rate at a minimum, the TRR system manages a dynamic persistent blacklist for host names that can't be resolved with DOH but works with the native resolver. Blacklisted entries will not be retried over DOH for a couple of days. "localhost" and names in the ".local" TLD will not be resolved via DOH. TRR is preffed OFF by default and you need to set a URI for an available DOH server to be able to use it. Since the URI for DOH is set with a name itself, it may have to use the native resolver for bootstrapping. (Optionally, the user can set the IP address of the DOH server in a pref to avoid the required initial native resolve.) When TRR starts up, it will first verify that it works by checking a "confirmation" domain name. This confirmation domain is a pref by default set to "example.com". TRR will also by default await the captive-portal detection to raise its green flag before getting activated. All prefs for TRR are under the "network.trr" hierarchy. The DNS-over-HTTPS spec: https://tools.ietf.org/html/draft-ietf-doh-dns-over-https-03 MozReview-Commit-ID: GuuU6vjTjlm --HG-- extra : rebase_source : 53fcca757334090ac05fec540ef29d109d5ceed3
2018-02-01 12:20:49 +03:00
"TRR.cpp",
"TRRQuery.cpp",
bug 1434852 - introducing TRR (DOH); r=mcmanus,valentin Provides an optional resolver mechanism for Firefox that allows running together with or instead of the native resolver. TRR offers resolving of host names using a dedicated DNS-over-HTTPS server (HTTPS is required, HTTP/2 is preferable). DNS-over-HTTPS (DOH) allows DNS resolves with enhanced privacy, secure transfers and improved performance. To keep the failure rate at a minimum, the TRR system manages a dynamic persistent blacklist for host names that can't be resolved with DOH but works with the native resolver. Blacklisted entries will not be retried over DOH for a couple of days. "localhost" and names in the ".local" TLD will not be resolved via DOH. TRR is preffed OFF by default and you need to set a URI for an available DOH server to be able to use it. Since the URI for DOH is set with a name itself, it may have to use the native resolver for bootstrapping. (Optionally, the user can set the IP address of the DOH server in a pref to avoid the required initial native resolve.) When TRR starts up, it will first verify that it works by checking a "confirmation" domain name. This confirmation domain is a pref by default set to "example.com". TRR will also by default await the captive-portal detection to raise its green flag before getting activated. All prefs for TRR are under the "network.trr" hierarchy. The DNS-over-HTTPS spec: https://tools.ietf.org/html/draft-ietf-doh-dns-over-https-03 MozReview-Commit-ID: GuuU6vjTjlm --HG-- extra : rebase_source : 53fcca757334090ac05fec540ef29d109d5ceed3
2018-02-01 12:20:49 +03:00
"TRRService.cpp",
"TRRServiceBase.cpp",
"TRRServiceChild.cpp",
"TRRServiceParent.cpp",
]
IPDL_SOURCES = [
"PDNSRequest.ipdl",
"PDNSRequestParams.ipdlh",
"PNativeDNSResolverOverride.ipdl",
"PTRRService.ipdl",
]
include("/ipc/chromium/chromium-config.mozbuild")
FINAL_LIBRARY = "xul"
GeneratedFile(
"etld_data.inc", script="prepare_tlds.py", inputs=["effective_tld_names.dat"]
)
# need to include etld_data.inc
LOCAL_INCLUDES += [
"/netwerk/base",
"/netwerk/protocol/http",
]
USE_LIBS += ["icu"]
if CONFIG["CC_TYPE"] in ("clang", "gcc"):
CXXFLAGS += ["-Wno-error=shadow"]