xref: /aosp_15_r20/external/cronet/net/dns/BUILD.gn (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker# Copyright 2018 The Chromium Authors
2*6777b538SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be
3*6777b538SAndroid Build Coastguard Worker# found in the LICENSE file.
4*6777b538SAndroid Build Coastguard Worker
5*6777b538SAndroid Build Coastguard Workerimport("//net/features.gni")
6*6777b538SAndroid Build Coastguard Workerimport("//testing/libfuzzer/fuzzer_test.gni")
7*6777b538SAndroid Build Coastguard Workerimport("//third_party/protobuf/proto_library.gni")
8*6777b538SAndroid Build Coastguard Worker
9*6777b538SAndroid Build Coastguard Workerenable_built_in_dns = use_blink
10*6777b538SAndroid Build Coastguard Worker
11*6777b538SAndroid Build Coastguard Workersource_set("dns") {
12*6777b538SAndroid Build Coastguard Worker  # Due to circular dependencies, should only be depended on through //net.
13*6777b538SAndroid Build Coastguard Worker  visibility = [
14*6777b538SAndroid Build Coastguard Worker    "//net",
15*6777b538SAndroid Build Coastguard Worker    "//net/http:transport_security_state_generated_files",
16*6777b538SAndroid Build Coastguard Worker  ]
17*6777b538SAndroid Build Coastguard Worker
18*6777b538SAndroid Build Coastguard Worker  # Internals only intended for use inside network stack (and tests).
19*6777b538SAndroid Build Coastguard Worker  friend = [
20*6777b538SAndroid Build Coastguard Worker    "//chrome/browser:test_support",
21*6777b538SAndroid Build Coastguard Worker    "//chrome/test/*",
22*6777b538SAndroid Build Coastguard Worker    "//components/certificate_transparency:unit_tests",
23*6777b538SAndroid Build Coastguard Worker    "//components/cronet/*",
24*6777b538SAndroid Build Coastguard Worker
25*6777b538SAndroid Build Coastguard Worker    # Needed for brokering system DNS resolution out of the network service.
26*6777b538SAndroid Build Coastguard Worker    "//content/browser/system_dns_resolution",
27*6777b538SAndroid Build Coastguard Worker    "//content/test/*",
28*6777b538SAndroid Build Coastguard Worker    "//net/*",
29*6777b538SAndroid Build Coastguard Worker    "//services/network/*",
30*6777b538SAndroid Build Coastguard Worker  ]
31*6777b538SAndroid Build Coastguard Worker
32*6777b538SAndroid Build Coastguard Worker  public = []
33*6777b538SAndroid Build Coastguard Worker  sources = [
34*6777b538SAndroid Build Coastguard Worker    "address_info.cc",
35*6777b538SAndroid Build Coastguard Worker    "address_info.h",
36*6777b538SAndroid Build Coastguard Worker    "address_sorter.h",
37*6777b538SAndroid Build Coastguard Worker    "context_host_resolver.cc",
38*6777b538SAndroid Build Coastguard Worker    "context_host_resolver.h",
39*6777b538SAndroid Build Coastguard Worker    "dns_alias_utility.cc",
40*6777b538SAndroid Build Coastguard Worker    "dns_alias_utility.h",
41*6777b538SAndroid Build Coastguard Worker    "dns_config.cc",
42*6777b538SAndroid Build Coastguard Worker    "dns_config_service.cc",
43*6777b538SAndroid Build Coastguard Worker    "dns_config_service.h",
44*6777b538SAndroid Build Coastguard Worker    "dns_hosts.cc",
45*6777b538SAndroid Build Coastguard Worker    "dns_hosts.h",
46*6777b538SAndroid Build Coastguard Worker    "dns_names_util.cc",
47*6777b538SAndroid Build Coastguard Worker    "dns_names_util.h",
48*6777b538SAndroid Build Coastguard Worker    "dns_query.cc",
49*6777b538SAndroid Build Coastguard Worker    "dns_query.h",
50*6777b538SAndroid Build Coastguard Worker    "dns_reloader.cc",
51*6777b538SAndroid Build Coastguard Worker    "dns_reloader.h",
52*6777b538SAndroid Build Coastguard Worker    "dns_response.cc",
53*6777b538SAndroid Build Coastguard Worker    "dns_response_result_extractor.cc",
54*6777b538SAndroid Build Coastguard Worker    "dns_response_result_extractor.h",
55*6777b538SAndroid Build Coastguard Worker    "dns_server_iterator.cc",
56*6777b538SAndroid Build Coastguard Worker    "dns_server_iterator.h",
57*6777b538SAndroid Build Coastguard Worker    "dns_session.cc",
58*6777b538SAndroid Build Coastguard Worker    "dns_session.h",
59*6777b538SAndroid Build Coastguard Worker    "dns_task_results_manager.cc",
60*6777b538SAndroid Build Coastguard Worker    "dns_task_results_manager.h",
61*6777b538SAndroid Build Coastguard Worker    "dns_transaction.cc",
62*6777b538SAndroid Build Coastguard Worker    "dns_udp_tracker.cc",
63*6777b538SAndroid Build Coastguard Worker    "dns_udp_tracker.h",
64*6777b538SAndroid Build Coastguard Worker    "dns_util.cc",
65*6777b538SAndroid Build Coastguard Worker    "dns_util.h",
66*6777b538SAndroid Build Coastguard Worker    "host_cache.cc",
67*6777b538SAndroid Build Coastguard Worker    "host_resolver.cc",
68*6777b538SAndroid Build Coastguard Worker    "host_resolver_cache.cc",
69*6777b538SAndroid Build Coastguard Worker    "host_resolver_cache.h",
70*6777b538SAndroid Build Coastguard Worker    "host_resolver_dns_task.cc",
71*6777b538SAndroid Build Coastguard Worker    "host_resolver_dns_task.h",
72*6777b538SAndroid Build Coastguard Worker    "host_resolver_internal_result.cc",
73*6777b538SAndroid Build Coastguard Worker    "host_resolver_internal_result.h",
74*6777b538SAndroid Build Coastguard Worker    "host_resolver_manager.cc",
75*6777b538SAndroid Build Coastguard Worker    "host_resolver_manager_job.cc",
76*6777b538SAndroid Build Coastguard Worker    "host_resolver_manager_job.h",
77*6777b538SAndroid Build Coastguard Worker    "host_resolver_manager_request_impl.cc",
78*6777b538SAndroid Build Coastguard Worker    "host_resolver_manager_request_impl.h",
79*6777b538SAndroid Build Coastguard Worker    "host_resolver_manager_service_endpoint_request_impl.cc",
80*6777b538SAndroid Build Coastguard Worker    "host_resolver_manager_service_endpoint_request_impl.h",
81*6777b538SAndroid Build Coastguard Worker    "host_resolver_mdns_listener_impl.cc",
82*6777b538SAndroid Build Coastguard Worker    "host_resolver_mdns_listener_impl.h",
83*6777b538SAndroid Build Coastguard Worker    "host_resolver_mdns_task.cc",
84*6777b538SAndroid Build Coastguard Worker    "host_resolver_mdns_task.h",
85*6777b538SAndroid Build Coastguard Worker    "host_resolver_nat64_task.cc",
86*6777b538SAndroid Build Coastguard Worker    "host_resolver_nat64_task.h",
87*6777b538SAndroid Build Coastguard Worker    "host_resolver_proc.cc",
88*6777b538SAndroid Build Coastguard Worker    "host_resolver_proc.h",
89*6777b538SAndroid Build Coastguard Worker    "host_resolver_system_task.cc",
90*6777b538SAndroid Build Coastguard Worker    "host_resolver_system_task.h",
91*6777b538SAndroid Build Coastguard Worker    "https_record_rdata.cc",
92*6777b538SAndroid Build Coastguard Worker    "httpssvc_metrics.cc",
93*6777b538SAndroid Build Coastguard Worker    "httpssvc_metrics.h",
94*6777b538SAndroid Build Coastguard Worker    "loopback_only.cc",
95*6777b538SAndroid Build Coastguard Worker    "loopback_only.h",
96*6777b538SAndroid Build Coastguard Worker    "mapped_host_resolver.cc",
97*6777b538SAndroid Build Coastguard Worker    "nsswitch_reader.cc",
98*6777b538SAndroid Build Coastguard Worker    "nsswitch_reader.h",
99*6777b538SAndroid Build Coastguard Worker    "opt_record_rdata.cc",
100*6777b538SAndroid Build Coastguard Worker    "record_parsed.cc",
101*6777b538SAndroid Build Coastguard Worker    "record_rdata.cc",
102*6777b538SAndroid Build Coastguard Worker    "resolve_context.cc",
103*6777b538SAndroid Build Coastguard Worker    "resolve_context.h",
104*6777b538SAndroid Build Coastguard Worker    "serial_worker.cc",
105*6777b538SAndroid Build Coastguard Worker    "serial_worker.h",
106*6777b538SAndroid Build Coastguard Worker    "system_dns_config_change_notifier.cc",
107*6777b538SAndroid Build Coastguard Worker    "system_dns_config_change_notifier.h",
108*6777b538SAndroid Build Coastguard Worker    "test_dns_config_service.cc",
109*6777b538SAndroid Build Coastguard Worker    "test_dns_config_service.h",
110*6777b538SAndroid Build Coastguard Worker  ]
111*6777b538SAndroid Build Coastguard Worker
112*6777b538SAndroid Build Coastguard Worker  if (is_win) {
113*6777b538SAndroid Build Coastguard Worker    sources += [
114*6777b538SAndroid Build Coastguard Worker      "address_sorter_win.cc",
115*6777b538SAndroid Build Coastguard Worker      "dns_config_service_win.cc",
116*6777b538SAndroid Build Coastguard Worker      "dns_config_service_win.h",
117*6777b538SAndroid Build Coastguard Worker    ]
118*6777b538SAndroid Build Coastguard Worker  }
119*6777b538SAndroid Build Coastguard Worker
120*6777b538SAndroid Build Coastguard Worker  if (is_mac) {
121*6777b538SAndroid Build Coastguard Worker    sources += [
122*6777b538SAndroid Build Coastguard Worker      "dns_config_watcher_mac.cc",
123*6777b538SAndroid Build Coastguard Worker      "dns_config_watcher_mac.h",
124*6777b538SAndroid Build Coastguard Worker      "notify_watcher_mac.cc",
125*6777b538SAndroid Build Coastguard Worker      "notify_watcher_mac.h",
126*6777b538SAndroid Build Coastguard Worker    ]
127*6777b538SAndroid Build Coastguard Worker  }
128*6777b538SAndroid Build Coastguard Worker
129*6777b538SAndroid Build Coastguard Worker  if (is_fuchsia) {
130*6777b538SAndroid Build Coastguard Worker    sources += [
131*6777b538SAndroid Build Coastguard Worker      "dns_config_service_fuchsia.cc",
132*6777b538SAndroid Build Coastguard Worker      "dns_config_service_fuchsia.h",
133*6777b538SAndroid Build Coastguard Worker    ]
134*6777b538SAndroid Build Coastguard Worker  }
135*6777b538SAndroid Build Coastguard Worker
136*6777b538SAndroid Build Coastguard Worker  if (is_android) {
137*6777b538SAndroid Build Coastguard Worker    sources += [
138*6777b538SAndroid Build Coastguard Worker      "dns_config_service_android.cc",
139*6777b538SAndroid Build Coastguard Worker      "dns_config_service_android.h",
140*6777b538SAndroid Build Coastguard Worker    ]
141*6777b538SAndroid Build Coastguard Worker  } else if (is_linux) {
142*6777b538SAndroid Build Coastguard Worker    sources += [
143*6777b538SAndroid Build Coastguard Worker      "dns_config_service_linux.cc",
144*6777b538SAndroid Build Coastguard Worker      "dns_config_service_linux.h",
145*6777b538SAndroid Build Coastguard Worker    ]
146*6777b538SAndroid Build Coastguard Worker  } else if (is_posix) {
147*6777b538SAndroid Build Coastguard Worker    sources += [
148*6777b538SAndroid Build Coastguard Worker      "dns_config_service_posix.cc",
149*6777b538SAndroid Build Coastguard Worker      "dns_config_service_posix.h",
150*6777b538SAndroid Build Coastguard Worker    ]
151*6777b538SAndroid Build Coastguard Worker  }
152*6777b538SAndroid Build Coastguard Worker
153*6777b538SAndroid Build Coastguard Worker  if (enable_built_in_dns) {
154*6777b538SAndroid Build Coastguard Worker    sources += [ "dns_client.cc" ]
155*6777b538SAndroid Build Coastguard Worker
156*6777b538SAndroid Build Coastguard Worker    if (is_posix || is_fuchsia) {
157*6777b538SAndroid Build Coastguard Worker      sources += [
158*6777b538SAndroid Build Coastguard Worker        "address_sorter_posix.cc",
159*6777b538SAndroid Build Coastguard Worker        "address_sorter_posix.h",
160*6777b538SAndroid Build Coastguard Worker      ]
161*6777b538SAndroid Build Coastguard Worker    }
162*6777b538SAndroid Build Coastguard Worker  }
163*6777b538SAndroid Build Coastguard Worker
164*6777b538SAndroid Build Coastguard Worker  if (enable_mdns) {
165*6777b538SAndroid Build Coastguard Worker    sources += [
166*6777b538SAndroid Build Coastguard Worker      "mdns_cache.cc",
167*6777b538SAndroid Build Coastguard Worker      "mdns_cache.h",
168*6777b538SAndroid Build Coastguard Worker      "mdns_client.cc",
169*6777b538SAndroid Build Coastguard Worker      "mdns_client_impl.cc",
170*6777b538SAndroid Build Coastguard Worker      "mdns_client_impl.h",
171*6777b538SAndroid Build Coastguard Worker    ]
172*6777b538SAndroid Build Coastguard Worker  }
173*6777b538SAndroid Build Coastguard Worker
174*6777b538SAndroid Build Coastguard Worker  deps = [ "//net:net_deps" ]
175*6777b538SAndroid Build Coastguard Worker
176*6777b538SAndroid Build Coastguard Worker  public_deps = [
177*6777b538SAndroid Build Coastguard Worker    ":dns_client",
178*6777b538SAndroid Build Coastguard Worker    ":host_resolver",
179*6777b538SAndroid Build Coastguard Worker    ":host_resolver_manager",
180*6777b538SAndroid Build Coastguard Worker    ":mdns_client",
181*6777b538SAndroid Build Coastguard Worker    "//net:net_public_deps",
182*6777b538SAndroid Build Coastguard Worker  ]
183*6777b538SAndroid Build Coastguard Worker
184*6777b538SAndroid Build Coastguard Worker  allow_circular_includes_from = [
185*6777b538SAndroid Build Coastguard Worker    ":dns_client",
186*6777b538SAndroid Build Coastguard Worker    ":host_resolver",
187*6777b538SAndroid Build Coastguard Worker    ":host_resolver_manager",
188*6777b538SAndroid Build Coastguard Worker    ":mdns_client",
189*6777b538SAndroid Build Coastguard Worker  ]
190*6777b538SAndroid Build Coastguard Worker}
191*6777b538SAndroid Build Coastguard Worker
192*6777b538SAndroid Build Coastguard Worker# The standard API of net/dns.
193*6777b538SAndroid Build Coastguard Worker#
194*6777b538SAndroid Build Coastguard Worker# Should typically only be used within the network service. Usage external to
195*6777b538SAndroid Build Coastguard Worker# the network service should instead use network service Mojo IPCs for host
196*6777b538SAndroid Build Coastguard Worker# resolution. See ResolveHost() in
197*6777b538SAndroid Build Coastguard Worker# /services/network/public/mojom/network_context.mojom and
198*6777b538SAndroid Build Coastguard Worker# /services/network/public/mojom/host_resolver.mojom.
199*6777b538SAndroid Build Coastguard Workersource_set("host_resolver") {
200*6777b538SAndroid Build Coastguard Worker  # Due to circular dependencies, should only be depended on through //net.
201*6777b538SAndroid Build Coastguard Worker  # Limit visibility to //net and other source_sets with the same access
202*6777b538SAndroid Build Coastguard Worker  # restriction.
203*6777b538SAndroid Build Coastguard Worker  visibility = [
204*6777b538SAndroid Build Coastguard Worker    ":dns",
205*6777b538SAndroid Build Coastguard Worker    ":dns_client",
206*6777b538SAndroid Build Coastguard Worker    ":host_resolver_manager",
207*6777b538SAndroid Build Coastguard Worker    ":mdns_client",
208*6777b538SAndroid Build Coastguard Worker    "//net",
209*6777b538SAndroid Build Coastguard Worker  ]
210*6777b538SAndroid Build Coastguard Worker
211*6777b538SAndroid Build Coastguard Worker  # Restricted access so we can keep track of all usage external to the
212*6777b538SAndroid Build Coastguard Worker  # network stack and network service.
213*6777b538SAndroid Build Coastguard Worker  friend = [
214*6777b538SAndroid Build Coastguard Worker    # chromecast/browser/url_request_context_factory.cc
215*6777b538SAndroid Build Coastguard Worker    # URLRequestContext creation for chromecast.
216*6777b538SAndroid Build Coastguard Worker    "//chromecast/browser",
217*6777b538SAndroid Build Coastguard Worker
218*6777b538SAndroid Build Coastguard Worker    # URLRequestContext and HttpNetworkSession::Context creation for iOS.
219*6777b538SAndroid Build Coastguard Worker    "//ios/components/io_thread",
220*6777b538SAndroid Build Coastguard Worker    "//ios/web/shell",
221*6777b538SAndroid Build Coastguard Worker    "//ios/web_view:*",
222*6777b538SAndroid Build Coastguard Worker
223*6777b538SAndroid Build Coastguard Worker    # Tests and test support.
224*6777b538SAndroid Build Coastguard Worker    "//chrome/browser:test_support",
225*6777b538SAndroid Build Coastguard Worker    "//chrome/test/*",
226*6777b538SAndroid Build Coastguard Worker    "//components/grpc_support/test:unit_tests",
227*6777b538SAndroid Build Coastguard Worker    "//content/shell:content_shell_lib",
228*6777b538SAndroid Build Coastguard Worker    "//content/test:*",
229*6777b538SAndroid Build Coastguard Worker
230*6777b538SAndroid Build Coastguard Worker    # Stand-alone tools.
231*6777b538SAndroid Build Coastguard Worker    "//google_apis/gcm:mcs_probe",
232*6777b538SAndroid Build Coastguard Worker
233*6777b538SAndroid Build Coastguard Worker    # Network stack/service.
234*6777b538SAndroid Build Coastguard Worker    "//components/certificate_transparency/*",
235*6777b538SAndroid Build Coastguard Worker    "//components/cronet/*",
236*6777b538SAndroid Build Coastguard Worker    "//net/*",
237*6777b538SAndroid Build Coastguard Worker    "//services/network/*",
238*6777b538SAndroid Build Coastguard Worker  ]
239*6777b538SAndroid Build Coastguard Worker
240*6777b538SAndroid Build Coastguard Worker  sources = [
241*6777b538SAndroid Build Coastguard Worker    "dns_config.h",
242*6777b538SAndroid Build Coastguard Worker    "host_cache.h",
243*6777b538SAndroid Build Coastguard Worker    "host_resolver.h",
244*6777b538SAndroid Build Coastguard Worker    "mapped_host_resolver.h",
245*6777b538SAndroid Build Coastguard Worker  ]
246*6777b538SAndroid Build Coastguard Worker  public = []
247*6777b538SAndroid Build Coastguard Worker
248*6777b538SAndroid Build Coastguard Worker  deps = [
249*6777b538SAndroid Build Coastguard Worker    "//net:net_deps",
250*6777b538SAndroid Build Coastguard Worker    "//net/dns/public",
251*6777b538SAndroid Build Coastguard Worker  ]
252*6777b538SAndroid Build Coastguard Worker  public_deps = [ "//net:net_public_deps" ]
253*6777b538SAndroid Build Coastguard Worker
254*6777b538SAndroid Build Coastguard Worker  allow_circular_includes_from = [ "//net/dns/public" ]
255*6777b538SAndroid Build Coastguard Worker}
256*6777b538SAndroid Build Coastguard Worker
257*6777b538SAndroid Build Coastguard Worker# Shared mostly-global handler of HostResolver requests.
258*6777b538SAndroid Build Coastguard Worker#
259*6777b538SAndroid Build Coastguard Worker# Typically should only be directly interacted with by NetworkService (or other
260*6777b538SAndroid Build Coastguard Worker# mostly-global creators of request contexts), standalone tools, and tests. Host
261*6777b538SAndroid Build Coastguard Worker# resolution should generally instead go through HostResolvers received from
262*6777b538SAndroid Build Coastguard Worker# URLRequestContext or network service Mojo IPCs.
263*6777b538SAndroid Build Coastguard Workersource_set("host_resolver_manager") {
264*6777b538SAndroid Build Coastguard Worker  # Due to circular dependencies, should only be depended on through //net.
265*6777b538SAndroid Build Coastguard Worker  # Limit visibility to //net and other source_sets with the same access
266*6777b538SAndroid Build Coastguard Worker  # restriction.
267*6777b538SAndroid Build Coastguard Worker  visibility = [
268*6777b538SAndroid Build Coastguard Worker    ":dns",
269*6777b538SAndroid Build Coastguard Worker    ":host_resolver",
270*6777b538SAndroid Build Coastguard Worker    "//net",
271*6777b538SAndroid Build Coastguard Worker  ]
272*6777b538SAndroid Build Coastguard Worker
273*6777b538SAndroid Build Coastguard Worker  # Restricted access so we can keep track of all usage external to the
274*6777b538SAndroid Build Coastguard Worker  # network stack and network service.
275*6777b538SAndroid Build Coastguard Worker  friend = [
276*6777b538SAndroid Build Coastguard Worker    # chromecast/browser/url_request_context_factory.cc
277*6777b538SAndroid Build Coastguard Worker    # URLRequestContext creation for chromecast.
278*6777b538SAndroid Build Coastguard Worker    "//chromecast/browser",
279*6777b538SAndroid Build Coastguard Worker
280*6777b538SAndroid Build Coastguard Worker    # Tests and test support.
281*6777b538SAndroid Build Coastguard Worker    "//components/cronet:cronet_common_unittests",
282*6777b538SAndroid Build Coastguard Worker
283*6777b538SAndroid Build Coastguard Worker    # Network stack/service.
284*6777b538SAndroid Build Coastguard Worker    "//net/*",
285*6777b538SAndroid Build Coastguard Worker    "//services/network/*",
286*6777b538SAndroid Build Coastguard Worker  ]
287*6777b538SAndroid Build Coastguard Worker
288*6777b538SAndroid Build Coastguard Worker  sources = [ "host_resolver_manager.h" ]
289*6777b538SAndroid Build Coastguard Worker  public = []
290*6777b538SAndroid Build Coastguard Worker
291*6777b538SAndroid Build Coastguard Worker  deps = [
292*6777b538SAndroid Build Coastguard Worker    ":host_resolver",
293*6777b538SAndroid Build Coastguard Worker    "//net:net_deps",
294*6777b538SAndroid Build Coastguard Worker    "//net/dns/public",
295*6777b538SAndroid Build Coastguard Worker  ]
296*6777b538SAndroid Build Coastguard Worker  public_deps = [ "//net:net_public_deps" ]
297*6777b538SAndroid Build Coastguard Worker}
298*6777b538SAndroid Build Coastguard Worker
299*6777b538SAndroid Build Coastguard Worker# DnsClient interfaces. Primarily intended as part of the implementation of the
300*6777b538SAndroid Build Coastguard Worker# standard HostResolver interface, but can be used as an alternative external
301*6777b538SAndroid Build Coastguard Worker# interface for advanced usage.
302*6777b538SAndroid Build Coastguard Workersource_set("dns_client") {
303*6777b538SAndroid Build Coastguard Worker  # Due to circular dependencies, should only be depended on through //net.
304*6777b538SAndroid Build Coastguard Worker  # Limit visibility to //net and other source_sets with the same access
305*6777b538SAndroid Build Coastguard Worker  # restriction.
306*6777b538SAndroid Build Coastguard Worker  visibility = [
307*6777b538SAndroid Build Coastguard Worker    ":dns",
308*6777b538SAndroid Build Coastguard Worker    ":mdns_client",
309*6777b538SAndroid Build Coastguard Worker    "//net",
310*6777b538SAndroid Build Coastguard Worker  ]
311*6777b538SAndroid Build Coastguard Worker
312*6777b538SAndroid Build Coastguard Worker  # Restricted access so we can keep track of all usage external to the
313*6777b538SAndroid Build Coastguard Worker  # network stack.
314*6777b538SAndroid Build Coastguard Worker  friend = [
315*6777b538SAndroid Build Coastguard Worker    # chrome/browser/local_discovery/service_discovery_client_impl.cc
316*6777b538SAndroid Build Coastguard Worker    # Result parsing utilities for parsing results read through MdnsClient.
317*6777b538SAndroid Build Coastguard Worker    # TODO(crbug.com/874662): Remove once migrated to network service.
318*6777b538SAndroid Build Coastguard Worker    "//chrome/browser",
319*6777b538SAndroid Build Coastguard Worker
320*6777b538SAndroid Build Coastguard Worker    # chrome/browser/ash/smb_client/discovery/mdns_host_locator.cc
321*6777b538SAndroid Build Coastguard Worker    # Result parsing for results read through MdnsClient.
322*6777b538SAndroid Build Coastguard Worker    # TODO(crbug.com/902531): Remove once migrated to network service.
323*6777b538SAndroid Build Coastguard Worker    "//chrome/browser/ash",
324*6777b538SAndroid Build Coastguard Worker
325*6777b538SAndroid Build Coastguard Worker    # Tests and test support
326*6777b538SAndroid Build Coastguard Worker    "//chrome/browser:test_support",
327*6777b538SAndroid Build Coastguard Worker    "//chrome/test/*",
328*6777b538SAndroid Build Coastguard Worker
329*6777b538SAndroid Build Coastguard Worker    # Network stack/service
330*6777b538SAndroid Build Coastguard Worker    "//components/certificate_transparency/*",
331*6777b538SAndroid Build Coastguard Worker    "//net/*",
332*6777b538SAndroid Build Coastguard Worker    "//services/network/*",
333*6777b538SAndroid Build Coastguard Worker  ]
334*6777b538SAndroid Build Coastguard Worker
335*6777b538SAndroid Build Coastguard Worker  sources = [
336*6777b538SAndroid Build Coastguard Worker    "dns_client.h",
337*6777b538SAndroid Build Coastguard Worker    "dns_response.h",
338*6777b538SAndroid Build Coastguard Worker    "dns_transaction.h",
339*6777b538SAndroid Build Coastguard Worker    "https_record_rdata.h",
340*6777b538SAndroid Build Coastguard Worker    "opt_record_rdata.h",
341*6777b538SAndroid Build Coastguard Worker    "record_parsed.h",
342*6777b538SAndroid Build Coastguard Worker    "record_rdata.h",
343*6777b538SAndroid Build Coastguard Worker  ]
344*6777b538SAndroid Build Coastguard Worker  public = []
345*6777b538SAndroid Build Coastguard Worker
346*6777b538SAndroid Build Coastguard Worker  deps = [
347*6777b538SAndroid Build Coastguard Worker    ":host_resolver",
348*6777b538SAndroid Build Coastguard Worker    "//net:net_deps",
349*6777b538SAndroid Build Coastguard Worker  ]
350*6777b538SAndroid Build Coastguard Worker  public_deps = [
351*6777b538SAndroid Build Coastguard Worker    "//net:net_public_deps",
352*6777b538SAndroid Build Coastguard Worker    "//net/dns/public",
353*6777b538SAndroid Build Coastguard Worker  ]
354*6777b538SAndroid Build Coastguard Worker}
355*6777b538SAndroid Build Coastguard Worker
356*6777b538SAndroid Build Coastguard Worker# MdnsClient interfaces.
357*6777b538SAndroid Build Coastguard Workersource_set("mdns_client") {
358*6777b538SAndroid Build Coastguard Worker  # Due to circular dependencies, should only be depended on through //net.
359*6777b538SAndroid Build Coastguard Worker  # Limit visibility to //net and other source_sets with the same access
360*6777b538SAndroid Build Coastguard Worker  # restriction.
361*6777b538SAndroid Build Coastguard Worker  visibility = [
362*6777b538SAndroid Build Coastguard Worker    ":dns",
363*6777b538SAndroid Build Coastguard Worker    "//net",
364*6777b538SAndroid Build Coastguard Worker  ]
365*6777b538SAndroid Build Coastguard Worker
366*6777b538SAndroid Build Coastguard Worker  # Restricted access so we can keep track of all usage external to the
367*6777b538SAndroid Build Coastguard Worker  # network stack.
368*6777b538SAndroid Build Coastguard Worker  friend = [
369*6777b538SAndroid Build Coastguard Worker    # chrome/browser/local_discovery/service_discovery_client_mdns.h
370*6777b538SAndroid Build Coastguard Worker    # chrome/browser/local_discovery/service_discovery_client_impl.h
371*6777b538SAndroid Build Coastguard Worker    # Makes MDNS queries using MDnsClient.
372*6777b538SAndroid Build Coastguard Worker    # TODO(crbug.com/874662): Remove once migrated to network service.
373*6777b538SAndroid Build Coastguard Worker    "//chrome/browser",
374*6777b538SAndroid Build Coastguard Worker
375*6777b538SAndroid Build Coastguard Worker    # chrome/tools/service_discovery_sniffer/service_discovery_sniffer.cc
376*6777b538SAndroid Build Coastguard Worker    # Creates MDnsClient instance and passes to ServiceDiscoveryClientImpl.
377*6777b538SAndroid Build Coastguard Worker    # TODO(crbug.com/874662): Remove once discovery client migrated.
378*6777b538SAndroid Build Coastguard Worker    "//chrome/tools/service_discovery_sniffer",
379*6777b538SAndroid Build Coastguard Worker
380*6777b538SAndroid Build Coastguard Worker    # chrome/browser/ash/smb_client/discovery/mdns_host_locator.h
381*6777b538SAndroid Build Coastguard Worker    # chrome/browser/ash/smb_client/discovery/mdns_host_locator.cc
382*6777b538SAndroid Build Coastguard Worker    # Makes MDNS queries using MDnsClient.
383*6777b538SAndroid Build Coastguard Worker    # TODO(crbug.com/902531): Remove once migrated to network service.
384*6777b538SAndroid Build Coastguard Worker    "//chrome/browser/ash",
385*6777b538SAndroid Build Coastguard Worker
386*6777b538SAndroid Build Coastguard Worker    # Tests and test support
387*6777b538SAndroid Build Coastguard Worker    "//chrome/browser:test_support",
388*6777b538SAndroid Build Coastguard Worker
389*6777b538SAndroid Build Coastguard Worker    # Network stack/service
390*6777b538SAndroid Build Coastguard Worker    "//net/*",
391*6777b538SAndroid Build Coastguard Worker    "//services/network/*",
392*6777b538SAndroid Build Coastguard Worker  ]
393*6777b538SAndroid Build Coastguard Worker
394*6777b538SAndroid Build Coastguard Worker  public = []
395*6777b538SAndroid Build Coastguard Worker  sources = []
396*6777b538SAndroid Build Coastguard Worker
397*6777b538SAndroid Build Coastguard Worker  if (enable_mdns) {
398*6777b538SAndroid Build Coastguard Worker    sources += [ "mdns_client.h" ]
399*6777b538SAndroid Build Coastguard Worker  }
400*6777b538SAndroid Build Coastguard Worker
401*6777b538SAndroid Build Coastguard Worker  deps = [
402*6777b538SAndroid Build Coastguard Worker    ":dns_client",
403*6777b538SAndroid Build Coastguard Worker    ":host_resolver",
404*6777b538SAndroid Build Coastguard Worker    "//net:net_deps",
405*6777b538SAndroid Build Coastguard Worker  ]
406*6777b538SAndroid Build Coastguard Worker  public_deps = [ "//net:net_public_deps" ]
407*6777b538SAndroid Build Coastguard Worker}
408*6777b538SAndroid Build Coastguard Worker
409*6777b538SAndroid Build Coastguard Workersource_set("tests") {
410*6777b538SAndroid Build Coastguard Worker  testonly = true
411*6777b538SAndroid Build Coastguard Worker  sources = [
412*6777b538SAndroid Build Coastguard Worker    "address_info_unittest.cc",
413*6777b538SAndroid Build Coastguard Worker    "context_host_resolver_unittest.cc",
414*6777b538SAndroid Build Coastguard Worker    "dns_alias_utility_unittest.cc",
415*6777b538SAndroid Build Coastguard Worker    "dns_config_service_unittest.cc",
416*6777b538SAndroid Build Coastguard Worker    "dns_hosts_unittest.cc",
417*6777b538SAndroid Build Coastguard Worker    "dns_names_util_unittest.cc",
418*6777b538SAndroid Build Coastguard Worker    "dns_query_unittest.cc",
419*6777b538SAndroid Build Coastguard Worker    "dns_response_result_extractor_unittest.cc",
420*6777b538SAndroid Build Coastguard Worker    "dns_response_unittest.cc",
421*6777b538SAndroid Build Coastguard Worker    "dns_task_results_manager_unittest.cc",
422*6777b538SAndroid Build Coastguard Worker    "dns_transaction_unittest.cc",
423*6777b538SAndroid Build Coastguard Worker    "dns_udp_tracker_unittest.cc",
424*6777b538SAndroid Build Coastguard Worker    "dns_util_unittest.cc",
425*6777b538SAndroid Build Coastguard Worker    "host_cache_unittest.cc",
426*6777b538SAndroid Build Coastguard Worker    "host_resolver_cache_unittest.cc",
427*6777b538SAndroid Build Coastguard Worker    "host_resolver_internal_result_unittest.cc",
428*6777b538SAndroid Build Coastguard Worker    "host_resolver_manager_ipv6_reachability_override_unittest.cc",
429*6777b538SAndroid Build Coastguard Worker    "host_resolver_manager_unittest.cc",
430*6777b538SAndroid Build Coastguard Worker    "host_resolver_service_endpoint_request_unittest.cc",
431*6777b538SAndroid Build Coastguard Worker    "https_record_rdata_unittest.cc",
432*6777b538SAndroid Build Coastguard Worker    "httpssvc_metrics_unittest.cc",
433*6777b538SAndroid Build Coastguard Worker    "loopback_only_unittest.cc",
434*6777b538SAndroid Build Coastguard Worker    "mapped_host_resolver_unittest.cc",
435*6777b538SAndroid Build Coastguard Worker    "nsswitch_reader_unittest.cc",
436*6777b538SAndroid Build Coastguard Worker    "opt_record_rdata_unittest.cc",
437*6777b538SAndroid Build Coastguard Worker    "record_parsed_unittest.cc",
438*6777b538SAndroid Build Coastguard Worker    "record_rdata_unittest.cc",
439*6777b538SAndroid Build Coastguard Worker    "resolve_context_unittest.cc",
440*6777b538SAndroid Build Coastguard Worker    "serial_worker_unittest.cc",
441*6777b538SAndroid Build Coastguard Worker    "system_dns_config_change_notifier_unittest.cc",
442*6777b538SAndroid Build Coastguard Worker  ]
443*6777b538SAndroid Build Coastguard Worker
444*6777b538SAndroid Build Coastguard Worker  if (is_win) {
445*6777b538SAndroid Build Coastguard Worker    sources += [ "dns_config_service_win_unittest.cc" ]
446*6777b538SAndroid Build Coastguard Worker  }
447*6777b538SAndroid Build Coastguard Worker
448*6777b538SAndroid Build Coastguard Worker  if (is_android) {
449*6777b538SAndroid Build Coastguard Worker    sources += [ "dns_config_service_android_unittest.cc" ]
450*6777b538SAndroid Build Coastguard Worker  } else if (is_linux) {
451*6777b538SAndroid Build Coastguard Worker    sources += [ "dns_config_service_linux_unittest.cc" ]
452*6777b538SAndroid Build Coastguard Worker  } else if (is_posix) {
453*6777b538SAndroid Build Coastguard Worker    sources += [ "dns_config_service_posix_unittest.cc" ]
454*6777b538SAndroid Build Coastguard Worker  }
455*6777b538SAndroid Build Coastguard Worker
456*6777b538SAndroid Build Coastguard Worker  if (enable_built_in_dns) {
457*6777b538SAndroid Build Coastguard Worker    sources += [
458*6777b538SAndroid Build Coastguard Worker      "address_sorter_unittest.cc",
459*6777b538SAndroid Build Coastguard Worker      "dns_client_unittest.cc",
460*6777b538SAndroid Build Coastguard Worker    ]
461*6777b538SAndroid Build Coastguard Worker    if (is_posix || is_fuchsia) {
462*6777b538SAndroid Build Coastguard Worker      sources += [ "address_sorter_posix_unittest.cc" ]
463*6777b538SAndroid Build Coastguard Worker    }
464*6777b538SAndroid Build Coastguard Worker  }
465*6777b538SAndroid Build Coastguard Worker
466*6777b538SAndroid Build Coastguard Worker  if (enable_mdns) {
467*6777b538SAndroid Build Coastguard Worker    sources += [
468*6777b538SAndroid Build Coastguard Worker      "mdns_cache_unittest.cc",
469*6777b538SAndroid Build Coastguard Worker      "mdns_client_unittest.cc",
470*6777b538SAndroid Build Coastguard Worker    ]
471*6777b538SAndroid Build Coastguard Worker  }
472*6777b538SAndroid Build Coastguard Worker
473*6777b538SAndroid Build Coastguard Worker  deps = [
474*6777b538SAndroid Build Coastguard Worker    "//base",
475*6777b538SAndroid Build Coastguard Worker    "//net",
476*6777b538SAndroid Build Coastguard Worker    "//net:test_support",
477*6777b538SAndroid Build Coastguard Worker    "//testing/gmock",
478*6777b538SAndroid Build Coastguard Worker    "//testing/gtest",
479*6777b538SAndroid Build Coastguard Worker  ]
480*6777b538SAndroid Build Coastguard Worker}
481*6777b538SAndroid Build Coastguard Worker
482*6777b538SAndroid Build Coastguard Workersource_set("test_support") {
483*6777b538SAndroid Build Coastguard Worker  visibility = [ "//net:test_support" ]
484*6777b538SAndroid Build Coastguard Worker  testonly = true
485*6777b538SAndroid Build Coastguard Worker  sources = [
486*6777b538SAndroid Build Coastguard Worker    "dns_test_util.cc",
487*6777b538SAndroid Build Coastguard Worker    "host_resolver_internal_result_test_util.cc",
488*6777b538SAndroid Build Coastguard Worker    "host_resolver_results_test_util.cc",
489*6777b538SAndroid Build Coastguard Worker    "mock_host_resolver.cc",
490*6777b538SAndroid Build Coastguard Worker  ]
491*6777b538SAndroid Build Coastguard Worker  public = [
492*6777b538SAndroid Build Coastguard Worker    "dns_test_util.h",
493*6777b538SAndroid Build Coastguard Worker    "host_resolver_internal_result_test_util.h",
494*6777b538SAndroid Build Coastguard Worker    "host_resolver_manager_unittest.h",
495*6777b538SAndroid Build Coastguard Worker    "host_resolver_results_test_util.h",
496*6777b538SAndroid Build Coastguard Worker    "mock_host_resolver.h",
497*6777b538SAndroid Build Coastguard Worker  ]
498*6777b538SAndroid Build Coastguard Worker
499*6777b538SAndroid Build Coastguard Worker  if (enable_mdns) {
500*6777b538SAndroid Build Coastguard Worker    sources += [
501*6777b538SAndroid Build Coastguard Worker      "mock_mdns_client.cc",
502*6777b538SAndroid Build Coastguard Worker      "mock_mdns_socket_factory.cc",
503*6777b538SAndroid Build Coastguard Worker    ]
504*6777b538SAndroid Build Coastguard Worker    public += [
505*6777b538SAndroid Build Coastguard Worker      "mock_mdns_client.h",
506*6777b538SAndroid Build Coastguard Worker      "mock_mdns_socket_factory.h",
507*6777b538SAndroid Build Coastguard Worker    ]
508*6777b538SAndroid Build Coastguard Worker  }
509*6777b538SAndroid Build Coastguard Worker
510*6777b538SAndroid Build Coastguard Worker  deps = [
511*6777b538SAndroid Build Coastguard Worker    "//base",
512*6777b538SAndroid Build Coastguard Worker    "//base/test:test_support",
513*6777b538SAndroid Build Coastguard Worker    "//net",
514*6777b538SAndroid Build Coastguard Worker    "//testing/gmock",
515*6777b538SAndroid Build Coastguard Worker    "//testing/gtest",
516*6777b538SAndroid Build Coastguard Worker  ]
517*6777b538SAndroid Build Coastguard Worker}
518*6777b538SAndroid Build Coastguard Worker
519*6777b538SAndroid Build Coastguard Workerif (use_fuzzing_engine) {
520*6777b538SAndroid Build Coastguard Worker  # fuzzer_test targets are no-op when |use_fuzzing_engine| is false. Fuzzer
521*6777b538SAndroid Build Coastguard Worker  # support targets should be disabled too.
522*6777b538SAndroid Build Coastguard Worker  source_set("fuzzer_test_support") {
523*6777b538SAndroid Build Coastguard Worker    testonly = true
524*6777b538SAndroid Build Coastguard Worker    sources = [
525*6777b538SAndroid Build Coastguard Worker      "fuzzed_host_resolver_util.cc",
526*6777b538SAndroid Build Coastguard Worker      "fuzzed_host_resolver_util.h",
527*6777b538SAndroid Build Coastguard Worker    ]
528*6777b538SAndroid Build Coastguard Worker    deps = [
529*6777b538SAndroid Build Coastguard Worker      "//base",
530*6777b538SAndroid Build Coastguard Worker      "//base/test:test_support",
531*6777b538SAndroid Build Coastguard Worker      "//net",
532*6777b538SAndroid Build Coastguard Worker    ]
533*6777b538SAndroid Build Coastguard Worker  }
534*6777b538SAndroid Build Coastguard Worker}
535*6777b538SAndroid Build Coastguard Worker
536*6777b538SAndroid Build Coastguard Workerproto_library("host_cache_fuzzer_proto") {
537*6777b538SAndroid Build Coastguard Worker  proto_in_dir = "//"
538*6777b538SAndroid Build Coastguard Worker  sources = [ "host_cache_fuzzer.proto" ]
539*6777b538SAndroid Build Coastguard Worker  deps = [ "//testing/libfuzzer/proto:json_proto" ]
540*6777b538SAndroid Build Coastguard Worker}
541*6777b538SAndroid Build Coastguard Worker
542*6777b538SAndroid Build Coastguard Workerfuzzer_test("net_dns_host_cache_fuzzer") {
543*6777b538SAndroid Build Coastguard Worker  sources = [ "host_cache_fuzzer.cc" ]
544*6777b538SAndroid Build Coastguard Worker  deps = [
545*6777b538SAndroid Build Coastguard Worker    ":host_cache_fuzzer_proto",
546*6777b538SAndroid Build Coastguard Worker    "//base",
547*6777b538SAndroid Build Coastguard Worker    "//net",
548*6777b538SAndroid Build Coastguard Worker    "//net:net_fuzzer_test_support",
549*6777b538SAndroid Build Coastguard Worker    "//testing/libfuzzer/proto:json_proto",
550*6777b538SAndroid Build Coastguard Worker    "//testing/libfuzzer/proto:json_proto_converter",
551*6777b538SAndroid Build Coastguard Worker    "//third_party/libprotobuf-mutator",
552*6777b538SAndroid Build Coastguard Worker  ]
553*6777b538SAndroid Build Coastguard Worker  dict = "//testing/libfuzzer/fuzzers/dicts/json.dict"
554*6777b538SAndroid Build Coastguard Worker}
555*6777b538SAndroid Build Coastguard Worker
556*6777b538SAndroid Build Coastguard Workerfuzzer_test("net_dns_hosts_parse_fuzzer") {
557*6777b538SAndroid Build Coastguard Worker  sources = [ "dns_hosts_parse_fuzzer.cc" ]
558*6777b538SAndroid Build Coastguard Worker  deps = [
559*6777b538SAndroid Build Coastguard Worker    "//base",
560*6777b538SAndroid Build Coastguard Worker    "//net",
561*6777b538SAndroid Build Coastguard Worker    "//net:net_fuzzer_test_support",
562*6777b538SAndroid Build Coastguard Worker  ]
563*6777b538SAndroid Build Coastguard Worker  dict = "//net/data/fuzzer_dictionaries/net_dns_hosts_parse_fuzzer.dict"
564*6777b538SAndroid Build Coastguard Worker}
565*6777b538SAndroid Build Coastguard Worker
566*6777b538SAndroid Build Coastguard Workerfuzzer_test("net_dns_host_resolver_cache_fuzzer") {
567*6777b538SAndroid Build Coastguard Worker  sources = [ "host_resolver_cache_fuzzer.cc" ]
568*6777b538SAndroid Build Coastguard Worker  deps = [
569*6777b538SAndroid Build Coastguard Worker    "//base",
570*6777b538SAndroid Build Coastguard Worker    "//net",
571*6777b538SAndroid Build Coastguard Worker    "//net:net_fuzzer_test_support",
572*6777b538SAndroid Build Coastguard Worker    "//testing/libfuzzer/proto:json_proto",
573*6777b538SAndroid Build Coastguard Worker    "//testing/libfuzzer/proto:json_proto_converter",
574*6777b538SAndroid Build Coastguard Worker    "//third_party/libprotobuf-mutator",
575*6777b538SAndroid Build Coastguard Worker  ]
576*6777b538SAndroid Build Coastguard Worker}
577*6777b538SAndroid Build Coastguard Worker
578*6777b538SAndroid Build Coastguard Workerfuzzer_test("net_dns_https_record_rdata_fuzzer") {
579*6777b538SAndroid Build Coastguard Worker  sources = [ "https_record_rdata_fuzzer.cc" ]
580*6777b538SAndroid Build Coastguard Worker  deps = [
581*6777b538SAndroid Build Coastguard Worker    "//base",
582*6777b538SAndroid Build Coastguard Worker    "//net",
583*6777b538SAndroid Build Coastguard Worker    "//net:net_fuzzer_test_support",
584*6777b538SAndroid Build Coastguard Worker  ]
585*6777b538SAndroid Build Coastguard Worker  dict = "//net/data/fuzzer_dictionaries/net_dns_record_fuzzer.dict"
586*6777b538SAndroid Build Coastguard Worker}
587*6777b538SAndroid Build Coastguard Worker
588*6777b538SAndroid Build Coastguard Workerfuzzer_test("net_dns_nsswitch_reader_fuzzer") {
589*6777b538SAndroid Build Coastguard Worker  sources = [ "nsswitch_reader_fuzzer.cc" ]
590*6777b538SAndroid Build Coastguard Worker  deps = [
591*6777b538SAndroid Build Coastguard Worker    "//base",
592*6777b538SAndroid Build Coastguard Worker    "//net",
593*6777b538SAndroid Build Coastguard Worker    "//net:net_fuzzer_test_support",
594*6777b538SAndroid Build Coastguard Worker  ]
595*6777b538SAndroid Build Coastguard Worker  dict = "//net/data/fuzzer_dictionaries/net_dns_nsswitch_reader_fuzzer.dict"
596*6777b538SAndroid Build Coastguard Worker}
597*6777b538SAndroid Build Coastguard Worker
598*6777b538SAndroid Build Coastguard Workerfuzzer_test("net_dns_record_fuzzer") {
599*6777b538SAndroid Build Coastguard Worker  sources = [ "dns_record_fuzzer.cc" ]
600*6777b538SAndroid Build Coastguard Worker  deps = [
601*6777b538SAndroid Build Coastguard Worker    "//base",
602*6777b538SAndroid Build Coastguard Worker    "//net",
603*6777b538SAndroid Build Coastguard Worker    "//net:net_fuzzer_test_support",
604*6777b538SAndroid Build Coastguard Worker  ]
605*6777b538SAndroid Build Coastguard Worker  dict = "//net/data/fuzzer_dictionaries/net_dns_record_fuzzer.dict"
606*6777b538SAndroid Build Coastguard Worker}
607*6777b538SAndroid Build Coastguard Worker
608*6777b538SAndroid Build Coastguard Workerfuzzer_test("net_dns_query_parse_fuzzer") {
609*6777b538SAndroid Build Coastguard Worker  sources = [ "dns_query_parse_fuzzer.cc" ]
610*6777b538SAndroid Build Coastguard Worker  deps = [
611*6777b538SAndroid Build Coastguard Worker    "//base",
612*6777b538SAndroid Build Coastguard Worker    "//net",
613*6777b538SAndroid Build Coastguard Worker    "//net:net_fuzzer_test_support",
614*6777b538SAndroid Build Coastguard Worker  ]
615*6777b538SAndroid Build Coastguard Worker  dict = "//net/data/fuzzer_dictionaries/net_dns_record_fuzzer.dict"
616*6777b538SAndroid Build Coastguard Worker}
617*6777b538SAndroid Build Coastguard Worker
618*6777b538SAndroid Build Coastguard Workerfuzzer_test("net_dns_response_fuzzer") {
619*6777b538SAndroid Build Coastguard Worker  sources = [ "dns_response_fuzzer.cc" ]
620*6777b538SAndroid Build Coastguard Worker  deps = [
621*6777b538SAndroid Build Coastguard Worker    "//base",
622*6777b538SAndroid Build Coastguard Worker    "//net",
623*6777b538SAndroid Build Coastguard Worker    "//net:net_fuzzer_test_support",
624*6777b538SAndroid Build Coastguard Worker  ]
625*6777b538SAndroid Build Coastguard Worker  dict = "//net/data/fuzzer_dictionaries/net_dns_record_fuzzer.dict"
626*6777b538SAndroid Build Coastguard Worker}
627*6777b538SAndroid Build Coastguard Worker
628*6777b538SAndroid Build Coastguard Workerfuzzer_test("net_host_resolver_manager_fuzzer") {
629*6777b538SAndroid Build Coastguard Worker  sources = [ "host_resolver_manager_fuzzer.cc" ]
630*6777b538SAndroid Build Coastguard Worker  deps = [
631*6777b538SAndroid Build Coastguard Worker    "//base",
632*6777b538SAndroid Build Coastguard Worker    "//net",
633*6777b538SAndroid Build Coastguard Worker    "//net:net_fuzzer_test_support",
634*6777b538SAndroid Build Coastguard Worker    "//net:test_support",
635*6777b538SAndroid Build Coastguard Worker  ]
636*6777b538SAndroid Build Coastguard Worker  dict = "//net/data/fuzzer_dictionaries/net_host_resolver_manager_fuzzer.dict"
637*6777b538SAndroid Build Coastguard Worker  libfuzzer_options = [ "max_len=4096" ]
638*6777b538SAndroid Build Coastguard Worker}
639*6777b538SAndroid Build Coastguard Worker
640*6777b538SAndroid Build Coastguard Workerif (is_win) {
641*6777b538SAndroid Build Coastguard Worker  fuzzer_test("net_dns_parse_domain_ascii_win_fuzzer") {
642*6777b538SAndroid Build Coastguard Worker    sources = [ "dns_parse_domain_ascii_win_fuzzer.cc" ]
643*6777b538SAndroid Build Coastguard Worker    deps = [
644*6777b538SAndroid Build Coastguard Worker      "//base",
645*6777b538SAndroid Build Coastguard Worker      "//net",
646*6777b538SAndroid Build Coastguard Worker      "//net:net_fuzzer_test_support",
647*6777b538SAndroid Build Coastguard Worker    ]
648*6777b538SAndroid Build Coastguard Worker    dict = "//net/data/fuzzer_dictionaries/net_dns_hosts_parse_fuzzer.dict"
649*6777b538SAndroid Build Coastguard Worker    seed_corpus = "//net/data/fuzzer_data/dns_parse_domain_ascii_win_fuzzer"
650*6777b538SAndroid Build Coastguard Worker  }
651*6777b538SAndroid Build Coastguard Worker}
652