blob: 497d16a88560e90989c7c45989f75700acdec035 [file] [log] [blame]
Eric Orth24feb5b2018-05-25 19:42:461# Copyright 2018 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
Yngve N. Pettersend5a75172018-07-09 06:36:563# found in the LICENSE file.
Eric Orth24feb5b2018-05-25 19:42:464
Eric Orth24feb5b2018-05-25 19:42:465import("//net/features.gni")
Max Morozf5eeca02018-12-01 18:43:306import("//testing/libfuzzer/fuzzer_test.gni")
Dan McArdlea6116fd2021-09-23 17:21:527import("//third_party/protobuf/proto_library.gni")
Eric Orth24feb5b2018-05-25 19:42:468
Victor Vasilievc0110d72019-07-21 19:29:469enable_built_in_dns = !is_ios
Eric Orth24feb5b2018-05-25 19:42:4610
11source_set("dns") {
12 # Due to circular dependencies, should only be depended on through //net.
Takuto Ikuta94330d9b2019-03-09 11:03:1413 visibility = [
14 "//net",
15 "//net/http:transport_security_state_generated_files",
16 ]
Eric Orth24feb5b2018-05-25 19:42:4617
18 # Internals only intended for use inside network stack (and tests).
19 friend = [
20 "//chrome/browser:test_support",
21 "//chrome/test/*",
22 "//components/certificate_transparency:unit_tests",
23 "//components/cronet/*",
24 "//net/*",
25 "//services/network/*",
26 ]
27
28 public = []
29 sources = [
David Benjaminead319b2021-05-05 21:48:1730 "address_info.cc",
31 "address_info.h",
32 "address_sorter.h",
33 "context_host_resolver.cc",
34 "context_host_resolver.h",
35 "dns_alias_utility.cc",
36 "dns_alias_utility.h",
37 "dns_config.cc",
38 "dns_config_service.cc",
39 "dns_config_service.h",
40 "dns_hosts.cc",
41 "dns_hosts.h",
42 "dns_query.cc",
43 "dns_query.h",
44 "dns_reloader.cc",
45 "dns_reloader.h",
46 "dns_response.cc",
47 "dns_response_result_extractor.cc",
48 "dns_response_result_extractor.h",
49 "dns_server_iterator.cc",
50 "dns_server_iterator.h",
51 "dns_session.cc",
52 "dns_session.h",
53 "dns_socket_allocator.cc",
54 "dns_socket_allocator.h",
55 "dns_transaction.cc",
56 "dns_udp_tracker.cc",
57 "dns_udp_tracker.h",
Eric Orth24feb5b2018-05-25 19:42:4658 "dns_util.cc",
59 "dns_util.h",
David Benjaminead319b2021-05-05 21:48:1760 "host_cache.cc",
61 "host_resolver.cc",
62 "host_resolver_manager.cc",
63 "host_resolver_mdns_listener_impl.cc",
64 "host_resolver_mdns_listener_impl.h",
65 "host_resolver_mdns_task.cc",
66 "host_resolver_mdns_task.h",
67 "host_resolver_proc.cc",
68 "host_resolver_proc.h",
69 "https_record_rdata.cc",
70 "httpssvc_metrics.cc",
71 "httpssvc_metrics.h",
72 "mapped_host_resolver.cc",
73 "nsswitch_reader.cc",
74 "nsswitch_reader.h",
75 "record_parsed.cc",
76 "record_rdata.cc",
77 "resolve_context.cc",
78 "resolve_context.h",
79 "serial_worker.cc",
80 "serial_worker.h",
81 "system_dns_config_change_notifier.cc",
82 "system_dns_config_change_notifier.h",
Eric Orth24feb5b2018-05-25 19:42:4683 ]
84
David Benjaminead319b2021-05-05 21:48:1785 if (is_win) {
Eric Orth24feb5b2018-05-25 19:42:4686 sources += [
David Benjaminead319b2021-05-05 21:48:1787 "address_sorter_win.cc",
88 "dns_config_service_win.cc",
89 "dns_config_service_win.h",
Eric Orth24feb5b2018-05-25 19:42:4690 ]
David Benjaminead319b2021-05-05 21:48:1791 }
Eric Orth24feb5b2018-05-25 19:42:4692
David Benjaminead319b2021-05-05 21:48:1793 if (is_mac) {
94 sources += [
95 "dns_config_watcher_mac.cc",
96 "dns_config_watcher_mac.h",
97 "notify_watcher_mac.cc",
98 "notify_watcher_mac.h",
99 ]
100 }
101
102 if (is_fuchsia) {
103 sources += [
104 "dns_config_service_fuchsia.cc",
105 "dns_config_service_fuchsia.h",
106 ]
107 }
108
109 if (is_android) {
110 sources += [
111 "dns_config_service_android.cc",
112 "dns_config_service_android.h",
113 ]
114 } else if (is_linux) {
115 sources += [
116 "dns_config_service_linux.cc",
117 "dns_config_service_linux.h",
118 ]
119 } else if (is_posix) {
120 sources += [
121 "dns_config_service_posix.cc",
122 "dns_config_service_posix.h",
123 ]
124 }
125
126 if (enable_built_in_dns) {
127 sources += [ "dns_client.cc" ]
128
129 if (is_posix || is_fuchsia) {
Sylvain Defresne2a262082020-09-15 11:19:58130 sources += [
David Benjaminead319b2021-05-05 21:48:17131 "address_sorter_posix.cc",
132 "address_sorter_posix.h",
Sylvain Defresne2a262082020-09-15 11:19:58133 ]
134 }
David Benjaminead319b2021-05-05 21:48:17135 }
Sylvain Defresne2a262082020-09-15 11:19:58136
David Benjaminead319b2021-05-05 21:48:17137 if (enable_mdns) {
138 sources += [
139 "mdns_cache.cc",
140 "mdns_cache.h",
141 "mdns_client.cc",
142 "mdns_client_impl.cc",
143 "mdns_client_impl.h",
144 ]
Eric Orth24feb5b2018-05-25 19:42:46145 }
146
Nico Webera2afc7f2020-01-13 21:06:20147 deps = [ "//net:net_deps" ]
Eric Orth24feb5b2018-05-25 19:42:46148
149 public_deps = [
150 ":dns_client",
Eric Orth168a7e52018-08-27 19:11:32151 ":host_resolver",
Eric Orth0bea1662019-03-20 19:11:22152 ":host_resolver_manager",
Eric Orth24feb5b2018-05-25 19:42:46153 ":mdns_client",
Eric Orth24feb5b2018-05-25 19:42:46154 "//net:net_public_deps",
155 ]
156
157 allow_circular_includes_from = [
158 ":dns_client",
Eric Orth168a7e52018-08-27 19:11:32159 ":host_resolver",
Eric Orth0bea1662019-03-20 19:11:22160 ":host_resolver_manager",
Eric Orth24feb5b2018-05-25 19:42:46161 ":mdns_client",
Eric Orth24feb5b2018-05-25 19:42:46162 ]
163}
164
Eric Orth168a7e52018-08-27 19:11:32165# The standard API of net/dns.
166#
167# Should typically only be used within the network service. Usage external to
168# the network service should instead use network service Mojo IPCs for host
169# resolution. See ResolveHost() in
170# /services/network/public/mojom/network_context.mojom and
171# /services/network/public/mojom/host_resolver.mojom.
172source_set("host_resolver") {
Eric Orth24feb5b2018-05-25 19:42:46173 # Due to circular dependencies, should only be depended on through //net.
174 # Limit visibility to //net and other source_sets with the same access
175 # restriction.
176 visibility = [
177 ":dns",
dalykbd726ee2019-05-30 01:44:06178 ":dns_client",
Eric Orth0bea1662019-03-20 19:11:22179 ":host_resolver_manager",
Eric Orth24feb5b2018-05-25 19:42:46180 ":mdns_client",
181 "//net",
182 ]
183
Ryan Sleevia9d6aa62019-07-26 13:32:18184 # Restricted access so we can keep track of all usage external to the
Eric Orth168a7e52018-08-27 19:11:32185 # network stack and network service.
186 friend = [
Eric Orth168a7e52018-08-27 19:11:32187 # chromecast/browser/url_request_context_factory.cc
188 # URLRequestContext creation for chromecast.
189 "//chromecast/browser",
190
Eric Orth168a7e52018-08-27 19:11:32191 # URLRequestContext and HttpNetworkSession::Context creation for iOS.
192 "//ios/components/io_thread",
193 "//ios/web/shell",
194 "//ios/web_view:*",
195
196 # Tests and test support.
197 "//chrome/browser:test_support",
198 "//chrome/test:browser_tests",
Eric Orth1556c382018-11-08 06:05:02199 "//chrome/test:unit_tests",
Eric Orth168a7e52018-08-27 19:11:32200 "//components/grpc_support/test:unit_tests",
201 "//content/shell:content_shell_lib",
Matt Menke991dd7e2021-07-22 17:31:51202 "//content/test:*",
Eric Orth168a7e52018-08-27 19:11:32203
204 # Stand-alone tools.
Eric Orth168a7e52018-08-27 19:11:32205 "//google_apis/gcm:mcs_probe",
206
207 # Network stack/service.
208 "//components/certificate_transparency/*",
209 "//components/cronet/*",
210 "//net/*",
211 "//services/network/*",
Eric Orth168a7e52018-08-27 19:11:32212 ]
213
David Benjaminead319b2021-05-05 21:48:17214 sources = [
215 "dns_config.h",
216 "host_cache.h",
217 "host_resolver.h",
David Benjaminead319b2021-05-05 21:48:17218 "mapped_host_resolver.h",
219 ]
Eric Orth24feb5b2018-05-25 19:42:46220 public = []
221
Eric Orth24feb5b2018-05-25 19:42:46222 deps = [
223 "//net:net_deps",
Eric Orth192e3bb2018-11-14 19:30:32224 "//net/dns/public",
Eric Orth24feb5b2018-05-25 19:42:46225 ]
Nico Webera2afc7f2020-01-13 21:06:20226 public_deps = [ "//net:net_public_deps" ]
Eric Orth89bce392020-09-25 21:36:19227
228 allow_circular_includes_from = [ "//net/dns/public" ]
Eric Orth24feb5b2018-05-25 19:42:46229}
230
Eric Orth0bea1662019-03-20 19:11:22231# Shared mostly-global handler of HostResolver requests.
232#
233# Typically should only be directly interacted with by NetworkService (or other
234# mostly-global creators of request contexts), standalone tools, and tests. Host
235# resolution should generally instead go through HostResolvers received from
236# URLRequestContext or network service Mojo IPCs.
237source_set("host_resolver_manager") {
238 # Due to circular dependencies, should only be depended on through //net.
239 # Limit visibility to //net and other source_sets with the same access
240 # restriction.
241 visibility = [
242 ":dns",
243 ":host_resolver",
244 "//net",
245 ]
246
Ryan Sleevia9d6aa62019-07-26 13:32:18247 # Restricted access so we can keep track of all usage external to the
Eric Orth0bea1662019-03-20 19:11:22248 # network stack and network service.
249 friend = [
Eric Orth89f8c0d2019-04-08 16:42:45250 # chromecast/browser/url_request_context_factory.cc
251 # URLRequestContext creation for chromecast.
252 "//chromecast/browser",
253
Eric Orth4e55b362019-05-07 22:00:03254 # Tests and test support.
255 "//components/cronet:cronet_common_unittests",
256
Eric Orth0bea1662019-03-20 19:11:22257 # Network stack/service.
258 "//net/*",
259 "//services/network/*",
260 ]
261
David Benjaminead319b2021-05-05 21:48:17262 sources = [ "host_resolver_manager.h" ]
Eric Orth0bea1662019-03-20 19:11:22263 public = []
264
Eric Orth0bea1662019-03-20 19:11:22265 deps = [
266 ":host_resolver",
267 "//net:net_deps",
268 "//net/dns/public",
269 ]
Nico Webera2afc7f2020-01-13 21:06:20270 public_deps = [ "//net:net_public_deps" ]
Eric Orth0bea1662019-03-20 19:11:22271}
272
Eric Orth1556c382018-11-08 06:05:02273# DnsClient interfaces. Primarily intended as part of the implementation of the
Eric Orth24feb5b2018-05-25 19:42:46274# standard HostResolver interface, but can be used as an alternative external
275# interface for advanced usage.
Eric Orth24feb5b2018-05-25 19:42:46276source_set("dns_client") {
277 # Due to circular dependencies, should only be depended on through //net.
278 # Limit visibility to //net and other source_sets with the same access
279 # restriction.
280 visibility = [
281 ":dns",
282 ":mdns_client",
283 "//net",
284 ]
285
Ryan Sleevia9d6aa62019-07-26 13:32:18286 # Restricted access so we can keep track of all usage external to the
Eric Orth24feb5b2018-05-25 19:42:46287 # network stack.
288 friend = [
Eric Orth1556c382018-11-08 06:05:02289 # chrome/browser/local_discovery/service_discovery_client_impl.cc
290 # Result parsing utilities for parsing results read through MdnsClient.
291 # TODO(crbug.com/874662): Remove once migrated to network service.
Eric Orth24feb5b2018-05-25 19:42:46292 "//chrome/browser",
Eric Orth1556c382018-11-08 06:05:02293
Yeunjoo Choic74b67a72021-06-11 08:08:36294 # chrome/browser/ash/smb_client/discovery/mdns_host_locator.cc
Eric Orth1556c382018-11-08 06:05:02295 # Result parsing for results read through MdnsClient.
296 # TODO(crbug.com/902531): Remove once migrated to network service.
Eric Orth24feb5b2018-05-25 19:42:46297 "//chrome/browser/chromeos",
Eric Orth1556c382018-11-08 06:05:02298
299 # Tests and test support
300 "//chrome/browser:test_support",
Eric Orth24feb5b2018-05-25 19:42:46301 "//chrome/test/*",
Eric Orth1556c382018-11-08 06:05:02302
303 # Network stack/service
Eric Orth24feb5b2018-05-25 19:42:46304 "//components/certificate_transparency/*",
305 "//net/*",
Eric Orth168a7e52018-08-27 19:11:32306 "//services/network/*",
Eric Orth24feb5b2018-05-25 19:42:46307 ]
308
David Benjaminead319b2021-05-05 21:48:17309 sources = [
310 "dns_client.h",
311 "dns_response.h",
312 "dns_transaction.h",
313 "https_record_rdata.h",
314 "record_parsed.h",
315 "record_rdata.h",
316 ]
Eric Orth24feb5b2018-05-25 19:42:46317 public = []
318
Eric Orth24feb5b2018-05-25 19:42:46319 deps = [
dalykbd726ee2019-05-30 01:44:06320 ":host_resolver",
Eric Orth24feb5b2018-05-25 19:42:46321 "//net:net_deps",
322 ]
323 public_deps = [
324 "//net:net_public_deps",
Eric Orth8afaf152018-11-07 21:01:26325 "//net/dns/public",
Eric Orth24feb5b2018-05-25 19:42:46326 ]
327}
328
329# MdnsClient interfaces.
Eric Orth24feb5b2018-05-25 19:42:46330source_set("mdns_client") {
331 # Due to circular dependencies, should only be depended on through //net.
332 # Limit visibility to //net and other source_sets with the same access
333 # restriction.
334 visibility = [
335 ":dns",
336 "//net",
337 ]
338
Ryan Sleevia9d6aa62019-07-26 13:32:18339 # Restricted access so we can keep track of all usage external to the
Eric Orth24feb5b2018-05-25 19:42:46340 # network stack.
341 friend = [
Eric Orth1556c382018-11-08 06:05:02342 # chrome/browser/local_discovery/service_discovery_client_mdns.h
343 # chrome/browser/local_discovery/service_discovery_client_impl.h
344 # Makes MDNS queries using MDnsClient.
345 # TODO(crbug.com/874662): Remove once migrated to network service.
Eric Orth24feb5b2018-05-25 19:42:46346 "//chrome/browser",
Eric Orth1556c382018-11-08 06:05:02347
348 # chrome/tools/service_discovery_sniffer/service_discovery_sniffer.cc
349 # Creates MDnsClient instance and passes to ServiceDiscoveryClientImpl.
350 # TODO(crbug.com/874662): Remove once discovery client migrated.
Eric Orth24feb5b2018-05-25 19:42:46351 "//chrome/tools/service_discovery_sniffer",
Eric Orth1556c382018-11-08 06:05:02352
Yeunjoo Choic74b67a72021-06-11 08:08:36353 # chrome/browser/ash/smb_client/discovery/mdns_host_locator.h
354 # chrome/browser/ash/smb_client/discovery/mdns_host_locator.cc
Eric Orth1556c382018-11-08 06:05:02355 # Makes MDNS queries using MDnsClient.
356 # TODO(crbug.com/902531): Remove once migrated to network service.
357 "//chrome/browser/chromeos",
358
359 # Tests and test support
360 "//chrome/browser:test_support",
361
362 # Network stack/service
Eric Orth24feb5b2018-05-25 19:42:46363 "//net/*",
Qingsi Wangc2213d5d2018-11-02 01:28:12364 "//services/network/*",
Eric Orth24feb5b2018-05-25 19:42:46365 ]
366
367 public = []
368 sources = []
369
David Benjaminead319b2021-05-05 21:48:17370 if (enable_mdns) {
Eric Orth24feb5b2018-05-25 19:42:46371 sources += [ "mdns_client.h" ]
372 }
373
374 deps = [
375 ":dns_client",
Eric Orth168a7e52018-08-27 19:11:32376 ":host_resolver",
Eric Orth24feb5b2018-05-25 19:42:46377 "//net:net_deps",
378 ]
Nico Webera2afc7f2020-01-13 21:06:20379 public_deps = [ "//net:net_public_deps" ]
Eric Orth24feb5b2018-05-25 19:42:46380}
381
Eric Orth24feb5b2018-05-25 19:42:46382source_set("tests") {
383 testonly = true
384 sources = [
Scott Sheehan135dadb2019-10-30 17:50:47385 "address_info_unittest.cc",
Eric Orth5233c3a2019-04-08 17:01:14386 "context_host_resolver_unittest.cc",
Cammie Smith Barnes958c7f32020-12-17 16:43:11387 "dns_alias_utility_unittest.cc",
Eric Orth24feb5b2018-05-25 19:42:46388 "dns_config_service_unittest.cc",
Eric Orth24feb5b2018-05-25 19:42:46389 "dns_hosts_unittest.cc",
390 "dns_query_unittest.cc",
Eric Orth9cec76f2020-11-17 07:42:42391 "dns_response_result_extractor_unittest.cc",
Eric Orth24feb5b2018-05-25 19:42:46392 "dns_response_unittest.cc",
Eric Orth9300cc62020-08-21 00:29:34393 "dns_socket_allocator_unittest.cc",
Eric Orth24feb5b2018-05-25 19:42:46394 "dns_transaction_unittest.cc",
Eric Orthf8680ac2020-06-10 22:57:24395 "dns_udp_tracker_unittest.cc",
Eric Orth24feb5b2018-05-25 19:42:46396 "dns_util_unittest.cc",
397 "host_cache_unittest.cc",
Eric Orth960e7062019-03-08 18:43:54398 "host_resolver_manager_unittest.cc",
Eric Orth464d51452020-10-29 14:48:20399 "https_record_rdata_unittest.cc",
Daniel McArdle4e2037e2020-06-11 22:40:51400 "httpssvc_metrics_unittest.cc",
Eric Orth24feb5b2018-05-25 19:42:46401 "mapped_host_resolver_unittest.cc",
Eric Orth54ce38f2021-04-06 18:19:48402 "nsswitch_reader_unittest.cc",
Eric Orth24feb5b2018-05-25 19:42:46403 "record_parsed_unittest.cc",
404 "record_rdata_unittest.cc",
Eric Orthf3495942020-01-31 21:14:18405 "resolve_context_unittest.cc",
Eric Orth24feb5b2018-05-25 19:42:46406 "serial_worker_unittest.cc",
Eric Orthde0c5662019-06-25 15:36:02407 "system_dns_config_change_notifier_unittest.cc",
Eric Orth24feb5b2018-05-25 19:42:46408 ]
409
Sylvain Defresne2a262082020-09-15 11:19:58410 if (is_win) {
411 sources += [ "dns_config_service_win_unittest.cc" ]
412 }
413
Eric Orthf18db28c92021-02-09 01:54:35414 if (is_android) {
415 sources += [ "dns_config_service_android_unittest.cc" ]
Eric Orthf79bc2e2021-04-02 22:23:06416 } else if (is_linux) {
417 sources += [ "dns_config_service_linux_unittest.cc" ]
Eric Orthf18db28c92021-02-09 01:54:35418 } else if (is_posix) {
Eric Orth24feb5b2018-05-25 19:42:46419 sources += [ "dns_config_service_posix_unittest.cc" ]
420 }
421
422 if (enable_built_in_dns) {
Eric Orth394db1732019-08-27 20:09:39423 sources += [
424 "address_sorter_unittest.cc",
425 "dns_client_unittest.cc",
426 ]
Eric Orth24feb5b2018-05-25 19:42:46427 if (is_posix || is_fuchsia) {
428 sources += [ "address_sorter_posix_unittest.cc" ]
429 }
430 }
431
Eric Orth24feb5b2018-05-25 19:42:46432 if (enable_mdns) {
433 sources += [
434 "mdns_cache_unittest.cc",
435 "mdns_client_unittest.cc",
436 ]
437 }
438
439 deps = [
440 "//base",
441 "//net",
442 "//net:test_support",
443 "//testing/gmock",
444 "//testing/gtest",
445 ]
Eric Orth24feb5b2018-05-25 19:42:46446}
447
448source_set("test_support") {
Eric Orthaf82b49a2020-02-01 01:48:50449 visibility = [ "//net:test_support" ]
Eric Orth24feb5b2018-05-25 19:42:46450 testonly = true
451 sources = [
Scott Sheehan135dadb2019-10-30 17:50:47452 "address_info_test_util.cc",
Eric Orth24feb5b2018-05-25 19:42:46453 "dns_test_util.cc",
454 "mock_host_resolver.cc",
Eric Orthde0c5662019-06-25 15:36:02455 "test_dns_config_service.cc",
Eric Orth24feb5b2018-05-25 19:42:46456 ]
457 public = [
Scott Sheehan135dadb2019-10-30 17:50:47458 "address_info_test_util.h",
Eric Orth24feb5b2018-05-25 19:42:46459 "dns_test_util.h",
460 "mock_host_resolver.h",
Eric Orthde0c5662019-06-25 15:36:02461 "test_dns_config_service.h",
Eric Orth24feb5b2018-05-25 19:42:46462 ]
463
464 if (enable_mdns) {
Eric Orth9871aafa2018-10-02 19:59:18465 sources += [
466 "mock_mdns_client.cc",
467 "mock_mdns_socket_factory.cc",
468 ]
469 public += [
470 "mock_mdns_client.h",
471 "mock_mdns_socket_factory.h",
472 ]
Eric Orth24feb5b2018-05-25 19:42:46473 }
474
475 deps = [
476 "//base",
477 "//net",
478 "//testing/gmock",
479 "//testing/gtest",
480 ]
481}
482
Max Morozc3dc6fc2019-08-29 20:04:28483if (use_fuzzing_engine) {
484 # fuzzer_test targets are no-op when |use_fuzzing_engine| is false. Fuzzer
485 # support targets should be disabled too.
486 source_set("fuzzer_test_support") {
487 testonly = true
488 sources = [
489 "fuzzed_host_resolver_util.cc",
490 "fuzzed_host_resolver_util.h",
491 ]
492 deps = [
493 "//base",
494 "//base/test:test_support",
495 "//net",
496 ]
497 }
Eric Orth24feb5b2018-05-25 19:42:46498}
499
Dan McArdlea6116fd2021-09-23 17:21:52500proto_library("host_cache_fuzzer_proto") {
501 proto_in_dir = "//"
502 sources = [ "host_cache_fuzzer.proto" ]
503 deps = [ "//testing/libfuzzer/proto:json_proto" ]
504}
505
Daniel McArdlebeba04c522020-05-05 20:49:17506fuzzer_test("net_dns_host_cache_fuzzer") {
507 sources = [ "host_cache_fuzzer.cc" ]
508 deps = [
Dan McArdlea6116fd2021-09-23 17:21:52509 ":host_cache_fuzzer_proto",
Daniel McArdlebeba04c522020-05-05 20:49:17510 "//base",
511 "//net",
512 "//net:net_fuzzer_test_support",
Dan McArdlea6116fd2021-09-23 17:21:52513 "//testing/libfuzzer/proto:json_proto",
514 "//testing/libfuzzer/proto:json_proto_converter",
515 "//third_party/libprotobuf-mutator",
Daniel McArdlebeba04c522020-05-05 20:49:17516 ]
517 dict = "//testing/libfuzzer/fuzzers/dicts/json.dict"
518}
519
Eric Orth24feb5b2018-05-25 19:42:46520fuzzer_test("net_dns_hosts_parse_fuzzer") {
Nico Webera2afc7f2020-01-13 21:06:20521 sources = [ "dns_hosts_parse_fuzzer.cc" ]
Eric Orth24feb5b2018-05-25 19:42:46522 deps = [
523 "//base",
524 "//net",
525 "//net:net_fuzzer_test_support",
526 ]
527 dict = "//net/data/fuzzer_dictionaries/net_dns_hosts_parse_fuzzer.dict"
528}
529
Eric Orth59fa4b22020-10-29 17:35:32530fuzzer_test("net_dns_https_record_rdata_fuzzer") {
531 sources = [ "https_record_rdata_fuzzer.cc" ]
532 deps = [
533 "//base",
534 "//net",
535 "//net:net_fuzzer_test_support",
536 ]
537 dict = "//net/data/fuzzer_dictionaries/net_dns_record_fuzzer.dict"
538}
539
Daniel McArdle96b6dcc2020-04-13 22:34:41540fuzzer_test("net_dns_integrity_record_fuzzer") {
541 sources = [ "integrity_record_fuzzer.cc" ]
542 deps = [
543 "//base",
544 "//net",
545 "//net:net_fuzzer_test_support",
546 ]
547}
548
Eric Orthdd746b72021-04-06 21:03:23549fuzzer_test("net_dns_nsswitch_reader_fuzzer") {
550 sources = [ "nsswitch_reader_fuzzer.cc" ]
551 deps = [
552 "//base",
553 "//net",
554 "//net:net_fuzzer_test_support",
555 ]
556 dict = "//net/data/fuzzer_dictionaries/net_dns_nsswitch_reader_fuzzer.dict"
557}
558
Eric Orth24feb5b2018-05-25 19:42:46559fuzzer_test("net_dns_record_fuzzer") {
Nico Webera2afc7f2020-01-13 21:06:20560 sources = [ "dns_record_fuzzer.cc" ]
Eric Orth24feb5b2018-05-25 19:42:46561 deps = [
562 "//base",
563 "//net",
564 "//net:net_fuzzer_test_support",
565 ]
566 dict = "//net/data/fuzzer_dictionaries/net_dns_record_fuzzer.dict"
567}
568
Qingsi Wangecd69252018-09-27 21:35:55569fuzzer_test("net_dns_query_parse_fuzzer") {
Nico Webera2afc7f2020-01-13 21:06:20570 sources = [ "dns_query_parse_fuzzer.cc" ]
Qingsi Wangecd69252018-09-27 21:35:55571 deps = [
572 "//base",
573 "//net",
574 "//net:net_fuzzer_test_support",
575 ]
576 dict = "//net/data/fuzzer_dictionaries/net_dns_record_fuzzer.dict"
577}
578
Qingsi Wang65841072018-10-09 01:14:45579fuzzer_test("net_dns_response_fuzzer") {
Nico Webera2afc7f2020-01-13 21:06:20580 sources = [ "dns_response_fuzzer.cc" ]
Qingsi Wang65841072018-10-09 01:14:45581 deps = [
582 "//base",
583 "//net",
584 "//net:net_fuzzer_test_support",
585 ]
586 dict = "//net/data/fuzzer_dictionaries/net_dns_record_fuzzer.dict"
587}
588
Eric Orth960e7062019-03-08 18:43:54589fuzzer_test("net_host_resolver_manager_fuzzer") {
Nico Webera2afc7f2020-01-13 21:06:20590 sources = [ "host_resolver_manager_fuzzer.cc" ]
Eric Orth24feb5b2018-05-25 19:42:46591 deps = [
592 "//base",
593 "//net",
594 "//net:net_fuzzer_test_support",
595 "//net:test_support",
596 ]
Eric Orth960e7062019-03-08 18:43:54597 dict = "//net/data/fuzzer_dictionaries/net_host_resolver_manager_fuzzer.dict"
Eric Orth24feb5b2018-05-25 19:42:46598}
Max Morozf5eeca02018-12-01 18:43:30599
600if (is_win) {
601 fuzzer_test("net_dns_parse_domain_ascii_win_fuzzer") {
Nico Webera2afc7f2020-01-13 21:06:20602 sources = [ "dns_parse_domain_ascii_win_fuzzer.cc" ]
Max Morozf5eeca02018-12-01 18:43:30603 deps = [
604 "//base",
605 "//net",
606 "//net:net_fuzzer_test_support",
607 ]
Max Morozcd52e3f2019-10-10 20:04:47608 dict = "//net/data/fuzzer_dictionaries/net_dns_hosts_parse_fuzzer.dict"
609 seed_corpus = "//net/data/fuzzer_data/dns_parse_domain_ascii_win_fuzzer"
Max Morozf5eeca02018-12-01 18:43:30610 }
611}