1 # Copyright 2013 The Chromium Authors
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
5 import("//build/buildflag_header.gni")
6 import("//build/config/chromecast_build.gni")
7 import("//build/config/chromeos/ui_mode.gni")
8 import("//build/config/compiler/compiler.gni")
9 import("//build/config/cronet/config.gni")
10 import("//build/config/features.gni")
11 import("//crypto/features.gni")
12 import("//net/features.gni")
13 import("//testing/libfuzzer/fuzzer_test.gni")
14 import("//testing/test.gni")
15 import("//third_party/icu/config.gni")
16 import("//third_party/protobuf/proto_library.gni")
17 import("//tools/grit/grit_rule.gni")
18 import("//url/features.gni")
20 import("//tizen_src/build/config/tizen_features.gni")
24 import("//build/config/android/config.gni")
25 import("//build/config/android/rules.gni")
26 import("//third_party/jni_zero/jni_zero.gni")
28 import("//build/config/mac/mac_sdk.gni")
30 import("//build/config/ios/bundle_data_from_filelist.gni")
34 # The way the cache uses mmap() is inefficient on some Android devices. If
35 # this flag is set, we hackily avoid using mmap() in the disk cache. We are
36 # pretty confident that mmap-ing the index would not hurt any existing x86
37 # android devices, but we cannot be so sure about the variety of ARM devices.
38 # So enable it for x86 only for now.
40 # Writable mmap isn't supported on Fuchsia, so it should be bypassed.
41 posix_bypass_mmap = (is_android && current_cpu != "x86") || is_fuchsia
43 enable_built_in_dns = use_blink
45 # TODO(droger): Support client auth on iOS. See http://crbug.com/145954).
47 # Historically this was disabled because client auth required
48 # platform-specific code deep in //net. Nowadays, this is abstracted away and
49 # we could enable the interfaces on iOS for platform-independence. However,
50 # merely enabling them changes our behavior from automatically proceeding
51 # with no client certificate to raising
52 # `URLRequest::Delegate::OnCertificateRequested`. Callers would need to be
53 # updated to apply that behavior manually.
55 # If fixing this, re-enable the tests in ssl_client_socket_unittest.cc and
56 # ssl_server_socket_unittest.cc which are disabled on iOS.
57 enable_client_certificates = !is_ios || (use_blink && !is_cronet_build)
59 # Unix sockets are not supported on iOS.
60 enable_unix_sockets = is_posix && !is_ios
62 # x86/x64 cast_shell builds run on regular trybots and can use python runtime
63 # and remote test server. ARM cast_shell builds don't have python runtime.
64 is_arm_cast_shell_build = (is_castos || is_cast_android) &&
65 (current_cpu == "arm" || current_cpu == "arm64")
67 # Python works only on Linux, MacOS and Windows so exclude the others,
68 # chromecast, android, fuchsia, ios.
70 !is_arm_cast_shell_build && !is_android && !is_fuchsia && !is_ios
72 # Platforms that cannot use python_utils (like Android but see full
73 # list above) will instead use a remote server.
74 use_remote_test_server =
75 !enable_python_utils && (enable_websockets || (is_cronet_build && !is_ios))
77 # Whether //net should use an external GSSAPI library for implementing HTTP
78 # Negotiate authentication. All platforms for which use_kerberos is true should
79 # have some external implementation since //net doesn't have intrinsic support
80 # for Kerberos. This implementation is an external GSSAPI library on all
81 # platforms except on:
83 # Windows : Uses SSPI for Negotiate authentication.
85 # Android : Uses an external authenticator. See
86 # https://www.chromium.org/developers/design-documents/http-authentication/writing-a-spnego-authenticator-for-chrome-on-android
87 use_external_gssapi = use_kerberos && !is_android && !is_win
89 config("net_test_config") {
90 if (use_remote_test_server) {
91 defines = [ "USE_REMOTE_TEST_SERVER" ]
95 buildflag_header("buildflags") {
96 header = "net_buildflags.h"
98 "POSIX_BYPASS_MMAP=$posix_bypass_mmap",
99 "DISABLE_FILE_SUPPORT=$disable_file_support",
100 "ENABLE_MDNS=$enable_mdns",
101 "ENABLE_REPORTING=$enable_reporting",
102 "ENABLE_WEBSOCKETS=$enable_websockets",
103 "ENABLE_CLIENT_CERTIFICATES=$enable_client_certificates",
104 "INCLUDE_TRANSPORT_SECURITY_STATE_PRELOAD_LIST=$include_transport_security_state_preload_list",
105 "USE_KERBEROS=$use_kerberos",
106 "USE_EXTERNAL_GSSAPI=$use_external_gssapi",
107 "CHROME_ROOT_STORE_OPTIONAL=$chrome_root_store_optional",
108 "CHROME_ROOT_STORE_ONLY=$chrome_root_store_only",
109 "CHROME_ROOT_STORE_SUPPORTED=$chrome_root_store_supported",
113 config("net_internal_config") {
114 defines = [ "NET_IMPLEMENTATION" ]
116 if (enable_built_in_dns) {
117 defines += [ "ENABLE_BUILT_IN_DNS" ]
122 ":net_internal_config",
123 "//build/config:precompiled_headers",
125 "//build/config/compiler:wexit_time_destructors",
128 if (is_linux || is_chromeos) {
129 net_configs += [ "//build/config/linux:libresolv" ]
132 source_set("constants") {
133 sources = [ "base/trace_constants.h" ]
137 buildflag_header("cronet_buildflags") {
138 header = "cronet_buildflags.h"
139 header_dir = "net/base"
140 flags = [ "CRONET_BUILD=$is_cronet_build" ]
145 "base/address_family.cc",
146 "base/address_family.h",
147 "base/address_list.cc",
148 "base/address_list.h",
151 "base/backoff_entry.cc",
152 "base/backoff_entry.h",
153 "base/backoff_entry_serializer.cc",
154 "base/backoff_entry_serializer.h",
155 "base/cache_metrics.cc",
156 "base/cache_metrics.h",
158 "base/chunked_upload_data_stream.cc",
159 "base/chunked_upload_data_stream.h",
160 "base/completion_once_callback.h",
161 "base/completion_repeating_callback.h",
162 "base/connection_endpoint_metadata.cc",
163 "base/connection_endpoint_metadata.h",
166 "base/datagram_buffer.cc",
167 "base/datagram_buffer.h",
168 "base/elements_upload_data_stream.cc",
169 "base/elements_upload_data_stream.h",
170 "base/expiring_cache.h",
173 "base/file_stream.cc",
174 "base/file_stream.h",
175 "base/file_stream_context.cc",
176 "base/file_stream_context.h",
177 "base/filename_util.cc",
178 "base/filename_util.h",
179 "base/filename_util_internal.cc",
180 "base/filename_util_internal.h",
181 "base/hash_value.cc",
185 "base/host_mapping_rules.cc",
186 "base/host_mapping_rules.h",
187 "base/host_port_pair.cc",
188 "base/host_port_pair.h",
189 "base/http_user_agent_settings.h",
190 "base/idempotency.h",
194 "base/ip_address.cc",
196 "base/ip_endpoint.cc",
197 "base/ip_endpoint.h",
198 "base/isolation_info.cc",
199 "base/isolation_info.h",
201 "base/load_flags_list.h",
202 "base/load_states.h",
203 "base/load_states_list.h",
204 "base/load_timing_info.cc",
205 "base/load_timing_info.h",
206 "base/logging_network_change_observer.cc",
207 "base/logging_network_change_observer.h",
208 "base/lookup_string_in_fixed_set.cc",
209 "base/lookup_string_in_fixed_set.h",
210 "base/mime_sniffer.cc",
211 "base/mime_sniffer.h",
214 "base/net_error_details.h",
215 "base/net_error_list.h",
216 "base/net_errors.cc",
218 "base/net_info_source_list.h",
219 "base/net_module.cc",
221 "base/net_string_util.h",
222 "base/network_activity_monitor.cc",
223 "base/network_activity_monitor.h",
224 "base/network_anonymization_key.cc",
225 "base/network_anonymization_key.h",
226 "base/network_change_notifier.cc",
227 "base/network_change_notifier.h",
228 "base/network_change_notifier_factory.h",
229 "base/network_delegate.cc",
230 "base/network_delegate.h",
231 "base/network_delegate_impl.cc",
232 "base/network_delegate_impl.h",
233 "base/network_handle.h",
234 "base/network_interfaces.cc",
235 "base/network_interfaces.h",
236 "base/network_isolation_key.cc",
237 "base/network_isolation_key.h",
238 "base/parse_number.cc",
239 "base/parse_number.h",
240 "base/platform_mime_util.h",
243 "base/prioritized_dispatcher.cc",
244 "base/prioritized_dispatcher.h",
245 "base/prioritized_task_runner.cc",
246 "base/prioritized_task_runner.h",
247 "base/priority_queue.h",
248 "base/privacy_mode.cc",
249 "base/privacy_mode.h",
250 "base/proxy_chain.cc",
251 "base/proxy_chain.h",
252 "base/proxy_delegate.h",
253 "base/proxy_server.cc",
254 "base/proxy_server.h",
255 "base/proxy_string_util.cc",
256 "base/proxy_string_util.h",
257 "base/rand_callback.h",
258 "base/registry_controlled_domains/registry_controlled_domain.cc",
259 "base/registry_controlled_domains/registry_controlled_domain.h",
260 "base/request_priority.cc",
261 "base/request_priority.h",
262 "base/scheme_host_port_matcher.cc",
263 "base/scheme_host_port_matcher.h",
264 "base/scheme_host_port_matcher_result.h",
265 "base/scheme_host_port_matcher_rule.cc",
266 "base/scheme_host_port_matcher_rule.h",
267 "base/schemeful_site.cc",
268 "base/schemeful_site.h",
269 "base/sockaddr_storage.cc",
270 "base/sockaddr_storage.h",
271 "base/sys_addrinfo.h",
272 "base/trace_event_stub.h",
274 "base/transport_info.cc",
275 "base/transport_info.h",
276 "base/upload_bytes_element_reader.cc",
277 "base/upload_bytes_element_reader.h",
278 "base/upload_data_stream.cc",
279 "base/upload_data_stream.h",
280 "base/upload_element_reader.cc",
281 "base/upload_element_reader.h",
282 "base/upload_file_element_reader.cc",
283 "base/upload_file_element_reader.h",
284 "base/upload_progress.h",
285 "base/url_search_params.cc",
286 "base/url_search_params.h",
291 "cert/caching_cert_verifier.cc",
292 "cert/caching_cert_verifier.h",
293 "cert/cert_and_ct_verifier.cc",
294 "cert/cert_and_ct_verifier.h",
295 "cert/cert_database.cc",
296 "cert/cert_database.h",
297 "cert/cert_net_fetcher.h",
298 "cert/cert_status_flags.cc",
299 "cert/cert_status_flags.h",
300 "cert/cert_status_flags_list.h",
301 "cert/cert_verifier.cc",
302 "cert/cert_verifier.h",
303 "cert/cert_verify_proc.cc",
304 "cert/cert_verify_proc.h",
305 "cert/cert_verify_proc_blocklist.inc",
306 "cert/cert_verify_proc_builtin.cc",
307 "cert/cert_verify_proc_builtin.h",
308 "cert/cert_verify_result.cc",
309 "cert/cert_verify_result.h",
310 "cert/client_cert_verifier.h",
311 "cert/coalescing_cert_verifier.cc",
312 "cert/coalescing_cert_verifier.h",
315 "cert/ct_log_response_parser.cc",
316 "cert/ct_log_response_parser.h",
317 "cert/ct_log_verifier.cc",
318 "cert/ct_log_verifier.h",
319 "cert/ct_log_verifier_util.cc",
320 "cert/ct_log_verifier_util.h",
321 "cert/ct_objects_extractor.cc",
322 "cert/ct_objects_extractor.h",
323 "cert/ct_policy_enforcer.cc",
324 "cert/ct_policy_enforcer.h",
325 "cert/ct_policy_status.h",
326 "cert/ct_sct_to_string.cc",
327 "cert/ct_sct_to_string.h",
328 "cert/ct_serialization.cc",
329 "cert/ct_serialization.h",
330 "cert/ct_signed_certificate_timestamp_log_param.cc",
331 "cert/ct_signed_certificate_timestamp_log_param.h",
332 "cert/ct_verifier.h",
333 "cert/do_nothing_ct_verifier.cc",
334 "cert/do_nothing_ct_verifier.h",
335 "cert/ev_root_ca_metadata.cc",
336 "cert/ev_root_ca_metadata.h",
337 "cert/internal/cert_issuer_source_aia.cc",
338 "cert/internal/cert_issuer_source_aia.h",
339 "cert/internal/revocation_checker.cc",
340 "cert/internal/revocation_checker.h",
341 "cert/internal/system_trust_store.cc",
342 "cert/internal/system_trust_store.h",
343 "cert/internal/trust_store_features.cc",
344 "cert/internal/trust_store_features.h",
345 "cert/known_roots.cc",
346 "cert/known_roots.h",
347 "cert/merkle_audit_proof.cc",
348 "cert/merkle_audit_proof.h",
349 "cert/merkle_consistency_proof.cc",
350 "cert/merkle_consistency_proof.h",
351 "cert/merkle_tree_leaf.cc",
352 "cert/merkle_tree_leaf.h",
353 "cert/multi_log_ct_verifier.cc",
354 "cert/multi_log_ct_verifier.h",
355 "cert/multi_threaded_cert_verifier.cc",
356 "cert/multi_threaded_cert_verifier.h",
357 "cert/ocsp_revocation_status.h",
358 "cert/ocsp_verify_result.cc",
359 "cert/ocsp_verify_result.h",
362 "cert/pki/cert_error_id.cc",
363 "cert/pki/cert_error_id.h",
364 "cert/pki/cert_error_params.cc",
365 "cert/pki/cert_error_params.h",
366 "cert/pki/cert_errors.cc",
367 "cert/pki/cert_errors.h",
368 "cert/pki/cert_issuer_source.h",
369 "cert/pki/cert_issuer_source_static.cc",
370 "cert/pki/cert_issuer_source_static.h",
371 "cert/pki/certificate_policies.cc",
372 "cert/pki/certificate_policies.h",
373 "cert/pki/common_cert_errors.cc",
374 "cert/pki/common_cert_errors.h",
377 "cert/pki/extended_key_usage.cc",
378 "cert/pki/extended_key_usage.h",
379 "cert/pki/general_names.cc",
380 "cert/pki/general_names.h",
381 "cert/pki/ip_util.cc",
382 "cert/pki/ip_util.h",
383 "cert/pki/name_constraints.cc",
384 "cert/pki/name_constraints.h",
387 "cert/pki/parse_certificate.cc",
388 "cert/pki/parse_certificate.h",
389 "cert/pki/parse_name.cc",
390 "cert/pki/parse_name.h",
391 "cert/pki/parsed_certificate.cc",
392 "cert/pki/parsed_certificate.h",
393 "cert/pki/path_builder.cc",
394 "cert/pki/path_builder.h",
395 "cert/pki/revocation_util.cc",
396 "cert/pki/revocation_util.h",
397 "cert/pki/signature_algorithm.cc",
398 "cert/pki/signature_algorithm.h",
399 "cert/pki/signature_verify_cache.h",
400 "cert/pki/simple_path_builder_delegate.cc",
401 "cert/pki/simple_path_builder_delegate.h",
402 "cert/pki/string_util.cc",
403 "cert/pki/string_util.h",
404 "cert/pki/trust_store.cc",
405 "cert/pki/trust_store.h",
406 "cert/pki/trust_store_collection.cc",
407 "cert/pki/trust_store_collection.h",
408 "cert/pki/trust_store_in_memory.cc",
409 "cert/pki/trust_store_in_memory.h",
410 "cert/pki/verify_certificate_chain.cc",
411 "cert/pki/verify_certificate_chain.h",
412 "cert/pki/verify_name_match.cc",
413 "cert/pki/verify_name_match.h",
414 "cert/pki/verify_signed_data.cc",
415 "cert/pki/verify_signed_data.h",
416 "cert/root_cert_list_generated.h",
417 "cert/sct_auditing_delegate.h",
418 "cert/sct_status_flags.cc",
419 "cert/sct_status_flags.h",
420 "cert/signed_certificate_timestamp.cc",
421 "cert/signed_certificate_timestamp.h",
422 "cert/signed_certificate_timestamp_and_status.cc",
423 "cert/signed_certificate_timestamp_and_status.h",
424 "cert/signed_tree_head.cc",
425 "cert/signed_tree_head.h",
426 "cert/symantec_certs.cc",
427 "cert/symantec_certs.h",
428 "cert/test_root_certs.cc",
429 "cert/test_root_certs.h",
430 "cert/time_conversions.cc",
431 "cert/time_conversions.h",
432 "cert/x509_cert_types.cc",
433 "cert/x509_cert_types.h",
434 "cert/x509_certificate.cc",
435 "cert/x509_certificate.h",
436 "cert/x509_certificate_net_log_param.cc",
437 "cert/x509_certificate_net_log_param.h",
440 "cert_net/cert_net_fetcher_url_request.cc",
441 "cert_net/cert_net_fetcher_url_request.h",
442 "cookies/canonical_cookie.cc",
443 "cookies/canonical_cookie.h",
444 "cookies/cookie_access_delegate.cc",
445 "cookies/cookie_access_delegate.h",
446 "cookies/cookie_access_result.cc",
447 "cookies/cookie_access_result.h",
448 "cookies/cookie_change_dispatcher.cc",
449 "cookies/cookie_change_dispatcher.h",
450 "cookies/cookie_constants.cc",
451 "cookies/cookie_constants.h",
452 "cookies/cookie_deletion_info.cc",
453 "cookies/cookie_deletion_info.h",
454 "cookies/cookie_inclusion_status.cc",
455 "cookies/cookie_inclusion_status.h",
456 "cookies/cookie_monster.cc",
457 "cookies/cookie_monster.h",
458 "cookies/cookie_monster_change_dispatcher.cc",
459 "cookies/cookie_monster_change_dispatcher.h",
460 "cookies/cookie_monster_netlog_params.cc",
461 "cookies/cookie_monster_netlog_params.h",
462 "cookies/cookie_options.cc",
463 "cookies/cookie_options.h",
464 "cookies/cookie_partition_key.cc",
465 "cookies/cookie_partition_key.h",
466 "cookies/cookie_partition_key_collection.cc",
467 "cookies/cookie_partition_key_collection.h",
468 "cookies/cookie_setting_override.h",
469 "cookies/cookie_store.cc",
470 "cookies/cookie_store.h",
471 "cookies/cookie_util.cc",
472 "cookies/cookie_util.h",
473 "cookies/parsed_cookie.cc",
474 "cookies/parsed_cookie.h",
475 "cookies/site_for_cookies.cc",
476 "cookies/site_for_cookies.h",
477 "cookies/static_cookie_policy.cc",
478 "cookies/static_cookie_policy.h",
479 "der/encode_values.cc",
480 "der/encode_values.h",
483 "der/parse_values.cc",
484 "der/parse_values.h",
489 "disk_cache/backend_cleanup_tracker.cc",
490 "disk_cache/backend_cleanup_tracker.h",
491 "disk_cache/blockfile/addr.cc",
492 "disk_cache/blockfile/addr.h",
493 "disk_cache/blockfile/backend_impl.cc",
494 "disk_cache/blockfile/backend_impl.h",
495 "disk_cache/blockfile/bitmap.cc",
496 "disk_cache/blockfile/bitmap.h",
497 "disk_cache/blockfile/block_files.cc",
498 "disk_cache/blockfile/block_files.h",
499 "disk_cache/blockfile/disk_format.cc",
500 "disk_cache/blockfile/disk_format.h",
501 "disk_cache/blockfile/disk_format_base.h",
502 "disk_cache/blockfile/entry_impl.cc",
503 "disk_cache/blockfile/entry_impl.h",
504 "disk_cache/blockfile/errors.h",
505 "disk_cache/blockfile/eviction.cc",
506 "disk_cache/blockfile/eviction.h",
507 "disk_cache/blockfile/experiments.h",
508 "disk_cache/blockfile/file.cc",
509 "disk_cache/blockfile/file.h",
510 "disk_cache/blockfile/file_block.h",
511 "disk_cache/blockfile/file_lock.cc",
512 "disk_cache/blockfile/file_lock.h",
513 "disk_cache/blockfile/in_flight_backend_io.cc",
514 "disk_cache/blockfile/in_flight_backend_io.h",
515 "disk_cache/blockfile/in_flight_io.cc",
516 "disk_cache/blockfile/in_flight_io.h",
517 "disk_cache/blockfile/mapped_file.cc",
518 "disk_cache/blockfile/mapped_file.h",
519 "disk_cache/blockfile/rankings.cc",
520 "disk_cache/blockfile/rankings.h",
521 "disk_cache/blockfile/sparse_control.cc",
522 "disk_cache/blockfile/sparse_control.h",
523 "disk_cache/blockfile/stats.cc",
524 "disk_cache/blockfile/stats.h",
525 "disk_cache/blockfile/storage_block-inl.h",
526 "disk_cache/blockfile/storage_block.h",
527 "disk_cache/blockfile/stress_support.h",
528 "disk_cache/cache_util.cc",
529 "disk_cache/cache_util.h",
530 "disk_cache/disk_cache.cc",
531 "disk_cache/disk_cache.h",
532 "disk_cache/memory/mem_backend_impl.cc",
533 "disk_cache/memory/mem_backend_impl.h",
534 "disk_cache/memory/mem_entry_impl.cc",
535 "disk_cache/memory/mem_entry_impl.h",
536 "disk_cache/net_log_parameters.cc",
537 "disk_cache/net_log_parameters.h",
538 "disk_cache/simple/post_doom_waiter.cc",
539 "disk_cache/simple/post_doom_waiter.h",
540 "disk_cache/simple/simple_backend_impl.cc",
541 "disk_cache/simple/simple_backend_impl.h",
542 "disk_cache/simple/simple_backend_version.h",
543 "disk_cache/simple/simple_entry_format.cc",
544 "disk_cache/simple/simple_entry_format.h",
545 "disk_cache/simple/simple_entry_format_history.h",
546 "disk_cache/simple/simple_entry_impl.cc",
547 "disk_cache/simple/simple_entry_impl.h",
548 "disk_cache/simple/simple_entry_operation.cc",
549 "disk_cache/simple/simple_entry_operation.h",
550 "disk_cache/simple/simple_file_enumerator.cc",
551 "disk_cache/simple/simple_file_enumerator.h",
552 "disk_cache/simple/simple_file_tracker.cc",
553 "disk_cache/simple/simple_file_tracker.h",
554 "disk_cache/simple/simple_histogram_macros.h",
555 "disk_cache/simple/simple_index.cc",
556 "disk_cache/simple/simple_index.h",
557 "disk_cache/simple/simple_index_delegate.h",
558 "disk_cache/simple/simple_index_file.cc",
559 "disk_cache/simple/simple_index_file.h",
560 "disk_cache/simple/simple_net_log_parameters.cc",
561 "disk_cache/simple/simple_net_log_parameters.h",
562 "disk_cache/simple/simple_synchronous_entry.cc",
563 "disk_cache/simple/simple_synchronous_entry.h",
564 "disk_cache/simple/simple_util.cc",
565 "disk_cache/simple/simple_util.h",
566 "disk_cache/simple/simple_version_upgrade.cc",
567 "disk_cache/simple/simple_version_upgrade.h",
568 "filter/filter_source_stream.cc",
569 "filter/filter_source_stream.h",
570 "filter/gzip_header.cc",
571 "filter/gzip_header.h",
572 "filter/gzip_source_stream.cc",
573 "filter/gzip_source_stream.h",
574 "filter/source_stream.cc",
575 "filter/source_stream.h",
576 "first_party_sets/addition_overlaps_union_find.cc",
577 "first_party_sets/addition_overlaps_union_find.h",
578 "first_party_sets/first_party_set_entry.cc",
579 "first_party_sets/first_party_set_entry.h",
580 "first_party_sets/first_party_set_entry_override.cc",
581 "first_party_sets/first_party_set_entry_override.h",
582 "first_party_sets/first_party_set_metadata.cc",
583 "first_party_sets/first_party_set_metadata.h",
584 "first_party_sets/first_party_sets_cache_filter.cc",
585 "first_party_sets/first_party_sets_cache_filter.h",
586 "first_party_sets/first_party_sets_context_config.cc",
587 "first_party_sets/first_party_sets_context_config.h",
588 "first_party_sets/global_first_party_sets.cc",
589 "first_party_sets/global_first_party_sets.h",
590 "http/alternative_service.cc",
591 "http/alternative_service.h",
592 "http/bidirectional_stream.cc",
593 "http/bidirectional_stream.h",
594 "http/bidirectional_stream_impl.cc",
595 "http/bidirectional_stream_impl.h",
596 "http/bidirectional_stream_request_info.cc",
597 "http/bidirectional_stream_request_info.h",
598 "http/broken_alternative_services.cc",
599 "http/broken_alternative_services.h",
602 "http/http_auth_cache.cc",
603 "http/http_auth_cache.h",
604 "http/http_auth_challenge_tokenizer.cc",
605 "http/http_auth_challenge_tokenizer.h",
606 "http/http_auth_controller.cc",
607 "http/http_auth_controller.h",
608 "http/http_auth_filter.cc",
609 "http/http_auth_filter.h",
610 "http/http_auth_handler.cc",
611 "http/http_auth_handler.h",
612 "http/http_auth_handler_basic.cc",
613 "http/http_auth_handler_basic.h",
614 "http/http_auth_handler_digest.cc",
615 "http/http_auth_handler_digest.h",
616 "http/http_auth_handler_factory.cc",
617 "http/http_auth_handler_factory.h",
618 "http/http_auth_handler_ntlm.cc",
619 "http/http_auth_handler_ntlm.h",
620 "http/http_auth_mechanism.h",
621 "http/http_auth_multi_round_parse.cc",
622 "http/http_auth_multi_round_parse.h",
623 "http/http_auth_preferences.cc",
624 "http/http_auth_preferences.h",
625 "http/http_auth_scheme.cc",
626 "http/http_auth_scheme.h",
627 "http/http_basic_state.cc",
628 "http/http_basic_state.h",
629 "http/http_basic_stream.cc",
630 "http/http_basic_stream.h",
631 "http/http_byte_range.cc",
632 "http/http_byte_range.h",
633 "http/http_cache.cc",
635 "http/http_cache_transaction.cc",
636 "http/http_cache_transaction.h",
637 "http/http_cache_writers.cc",
638 "http/http_cache_writers.h",
639 "http/http_chunked_decoder.cc",
640 "http/http_chunked_decoder.h",
641 "http/http_content_disposition.cc",
642 "http/http_content_disposition.h",
643 "http/http_log_util.cc",
644 "http/http_log_util.h",
645 "http/http_network_layer.cc",
646 "http/http_network_layer.h",
647 "http/http_network_session.cc",
648 "http/http_network_session.h",
649 "http/http_network_session_peer.cc",
650 "http/http_network_session_peer.h",
651 "http/http_network_transaction.cc",
652 "http/http_network_transaction.h",
653 "http/http_no_vary_search_data.cc",
654 "http/http_no_vary_search_data.h",
655 "http/http_proxy_client_socket.cc",
656 "http/http_proxy_client_socket.h",
657 "http/http_proxy_connect_job.cc",
658 "http/http_proxy_connect_job.h",
659 "http/http_raw_request_headers.cc",
660 "http/http_raw_request_headers.h",
661 "http/http_request_headers.cc",
662 "http/http_request_headers.h",
663 "http/http_request_info.cc",
664 "http/http_request_info.h",
665 "http/http_response_body_drainer.cc",
666 "http/http_response_body_drainer.h",
667 "http/http_response_headers.cc",
668 "http/http_response_headers.h",
669 "http/http_response_info.cc",
670 "http/http_response_info.h",
671 "http/http_security_headers.cc",
672 "http/http_security_headers.h",
673 "http/http_server_properties.cc",
674 "http/http_server_properties.h",
675 "http/http_server_properties_manager.cc",
676 "http/http_server_properties_manager.h",
677 "http/http_status_code.cc",
678 "http/http_status_code.h",
679 "http/http_status_code_list.h",
680 "http/http_stream.cc",
681 "http/http_stream.h",
682 "http/http_stream_factory.cc",
683 "http/http_stream_factory.h",
684 "http/http_stream_factory_job.cc",
685 "http/http_stream_factory_job.h",
686 "http/http_stream_factory_job_controller.cc",
687 "http/http_stream_factory_job_controller.h",
688 "http/http_stream_parser.cc",
689 "http/http_stream_parser.h",
690 "http/http_stream_request.cc",
691 "http/http_stream_request.h",
692 "http/http_transaction.h",
693 "http/http_transaction_factory.h",
696 "http/http_vary_data.cc",
697 "http/http_vary_data.h",
698 "http/http_version.h",
699 "http/partial_data.cc",
700 "http/partial_data.h",
701 "http/proxy_client_socket.cc",
702 "http/proxy_client_socket.h",
703 "http/proxy_fallback.cc",
704 "http/proxy_fallback.h",
705 "http/structured_headers.h",
706 "http/transport_security_persister.cc",
707 "http/transport_security_persister.h",
708 "http/transport_security_state.h",
709 "http/transport_security_state_source.cc",
710 "http/transport_security_state_source.h",
711 "http/url_security_manager.cc",
712 "http/url_security_manager.h",
713 "log/file_net_log_observer.cc",
714 "log/file_net_log_observer.h",
717 "log/net_log_capture_mode.cc",
718 "log/net_log_capture_mode.h",
719 "log/net_log_entry.cc",
720 "log/net_log_entry.h",
721 "log/net_log_event_type.cc",
722 "log/net_log_event_type.h",
723 "log/net_log_event_type_list.h",
724 "log/net_log_source.cc",
725 "log/net_log_source.h",
726 "log/net_log_source_type.h",
727 "log/net_log_source_type_list.h",
728 "log/net_log_util.cc",
729 "log/net_log_util.h",
730 "log/net_log_values.cc",
731 "log/net_log_values.h",
732 "log/net_log_with_source.cc",
733 "log/net_log_with_source.h",
734 "log/trace_net_log_observer.cc",
735 "log/trace_net_log_observer.h",
736 "nqe/cached_network_quality.cc",
737 "nqe/cached_network_quality.h",
738 "nqe/effective_connection_type.cc",
739 "nqe/effective_connection_type.h",
740 "nqe/effective_connection_type_observer.h",
741 "nqe/event_creator.cc",
742 "nqe/event_creator.h",
745 "nqe/network_qualities_prefs_manager.cc",
746 "nqe/network_qualities_prefs_manager.h",
747 "nqe/network_quality.cc",
748 "nqe/network_quality.h",
749 "nqe/network_quality_estimator.cc",
750 "nqe/network_quality_estimator.h",
751 "nqe/network_quality_estimator_params.cc",
752 "nqe/network_quality_estimator_params.h",
753 "nqe/network_quality_estimator_util.cc",
754 "nqe/network_quality_estimator_util.h",
755 "nqe/network_quality_observation.cc",
756 "nqe/network_quality_observation.h",
757 "nqe/network_quality_observation_source.h",
758 "nqe/network_quality_store.cc",
759 "nqe/network_quality_store.h",
760 "nqe/observation_buffer.cc",
761 "nqe/observation_buffer.h",
762 "nqe/peer_to_peer_connections_count_observer.h",
765 "nqe/rtt_throughput_estimates_observer.h",
766 "nqe/socket_watcher.cc",
767 "nqe/socket_watcher.h",
768 "nqe/socket_watcher_factory.cc",
769 "nqe/socket_watcher_factory.h",
770 "nqe/throughput_analyzer.cc",
771 "nqe/throughput_analyzer.h",
772 "nqe/weighted_observation.h",
773 "proxy_resolution/configured_proxy_resolution_request.cc",
774 "proxy_resolution/configured_proxy_resolution_request.h",
775 "proxy_resolution/configured_proxy_resolution_service.cc",
776 "proxy_resolution/configured_proxy_resolution_service.h",
777 "proxy_resolution/dhcp_pac_file_fetcher.cc",
778 "proxy_resolution/dhcp_pac_file_fetcher.h",
779 "proxy_resolution/multi_threaded_proxy_resolver.cc",
780 "proxy_resolution/multi_threaded_proxy_resolver.h",
781 "proxy_resolution/network_delegate_error_observer.cc",
782 "proxy_resolution/network_delegate_error_observer.h",
783 "proxy_resolution/pac_file_data.cc",
784 "proxy_resolution/pac_file_data.h",
785 "proxy_resolution/pac_file_decider.cc",
786 "proxy_resolution/pac_file_decider.h",
787 "proxy_resolution/pac_file_fetcher.cc",
788 "proxy_resolution/pac_file_fetcher.h",
789 "proxy_resolution/pac_file_fetcher_impl.cc",
790 "proxy_resolution/pac_file_fetcher_impl.h",
791 "proxy_resolution/polling_proxy_config_service.cc",
792 "proxy_resolution/polling_proxy_config_service.h",
793 "proxy_resolution/proxy_bypass_rules.cc",
794 "proxy_resolution/proxy_bypass_rules.h",
795 "proxy_resolution/proxy_config.cc",
796 "proxy_resolution/proxy_config.h",
797 "proxy_resolution/proxy_config_service.cc",
798 "proxy_resolution/proxy_config_service.h",
799 "proxy_resolution/proxy_config_service_fixed.cc",
800 "proxy_resolution/proxy_config_service_fixed.h",
801 "proxy_resolution/proxy_config_with_annotation.cc",
802 "proxy_resolution/proxy_config_with_annotation.h",
803 "proxy_resolution/proxy_info.cc",
804 "proxy_resolution/proxy_info.h",
805 "proxy_resolution/proxy_list.cc",
806 "proxy_resolution/proxy_list.h",
807 "proxy_resolution/proxy_resolution_request.h",
808 "proxy_resolution/proxy_resolution_service.h",
809 "proxy_resolution/proxy_resolve_dns_operation.h",
810 "proxy_resolution/proxy_resolver.h",
811 "proxy_resolution/proxy_resolver_error_observer.h",
812 "proxy_resolution/proxy_resolver_factory.cc",
813 "proxy_resolution/proxy_resolver_factory.h",
814 "proxy_resolution/proxy_retry_info.h",
815 "quic/address_utils.h",
816 "quic/bidirectional_stream_quic_impl.cc",
817 "quic/bidirectional_stream_quic_impl.h",
818 "quic/crypto/proof_source_chromium.cc",
819 "quic/crypto/proof_source_chromium.h",
820 "quic/crypto/proof_verifier_chromium.cc",
821 "quic/crypto/proof_verifier_chromium.h",
822 "quic/dedicated_web_transport_http3_client.cc",
823 "quic/dedicated_web_transport_http3_client.h",
824 "quic/network_connection.cc",
825 "quic/network_connection.h",
826 "quic/platform/impl/quic_chromium_clock.cc",
827 "quic/platform/impl/quic_chromium_clock.h",
828 "quic/properties_based_quic_server_info.cc",
829 "quic/properties_based_quic_server_info.h",
830 "quic/quic_address_mismatch.cc",
831 "quic/quic_address_mismatch.h",
832 "quic/quic_chromium_alarm_factory.cc",
833 "quic/quic_chromium_alarm_factory.h",
834 "quic/quic_chromium_client_session.cc",
835 "quic/quic_chromium_client_session.h",
836 "quic/quic_chromium_client_stream.cc",
837 "quic/quic_chromium_client_stream.h",
838 "quic/quic_chromium_connection_helper.cc",
839 "quic/quic_chromium_connection_helper.h",
840 "quic/quic_chromium_packet_reader.cc",
841 "quic/quic_chromium_packet_reader.h",
842 "quic/quic_chromium_packet_writer.cc",
843 "quic/quic_chromium_packet_writer.h",
844 "quic/quic_clock_skew_detector.cc",
845 "quic/quic_clock_skew_detector.h",
846 "quic/quic_connection_logger.cc",
847 "quic/quic_connection_logger.h",
848 "quic/quic_connectivity_monitor.cc",
849 "quic/quic_connectivity_monitor.h",
850 "quic/quic_context.cc",
851 "quic/quic_context.h",
852 "quic/quic_crypto_client_config_handle.cc",
853 "quic/quic_crypto_client_config_handle.h",
854 "quic/quic_crypto_client_stream_factory.cc",
855 "quic/quic_crypto_client_stream_factory.h",
856 "quic/quic_event_logger.cc",
857 "quic/quic_event_logger.h",
858 "quic/quic_http3_logger.cc",
859 "quic/quic_http3_logger.h",
860 "quic/quic_http_stream.cc",
861 "quic/quic_http_stream.h",
862 "quic/quic_http_utils.cc",
863 "quic/quic_http_utils.h",
864 "quic/quic_proxy_client_socket.cc",
865 "quic/quic_proxy_client_socket.h",
866 "quic/quic_server_info.cc",
867 "quic/quic_server_info.h",
868 "quic/quic_session_key.cc",
869 "quic/quic_session_key.h",
870 "quic/quic_stream_factory.cc",
871 "quic/quic_stream_factory.h",
872 "quic/set_quic_flag.cc",
873 "quic/set_quic_flag.h",
874 "quic/web_transport_client.cc",
875 "quic/web_transport_client.h",
876 "quic/web_transport_error.cc",
877 "quic/web_transport_error.h",
878 "socket/client_socket_factory.cc",
879 "socket/client_socket_factory.h",
880 "socket/client_socket_handle.cc",
881 "socket/client_socket_handle.h",
882 "socket/client_socket_pool.cc",
883 "socket/client_socket_pool.h",
884 "socket/client_socket_pool_manager.cc",
885 "socket/client_socket_pool_manager.h",
886 "socket/client_socket_pool_manager_impl.cc",
887 "socket/client_socket_pool_manager_impl.h",
888 "socket/connect_job.cc",
889 "socket/connect_job.h",
890 "socket/connect_job_factory.cc",
891 "socket/connect_job_factory.h",
892 "socket/connection_attempts.h",
893 "socket/datagram_client_socket.h",
894 "socket/datagram_server_socket.h",
895 "socket/datagram_socket.h",
896 "socket/diff_serv_code_point.h",
897 "socket/network_binding_client_socket_factory.cc",
898 "socket/network_binding_client_socket_factory.h",
899 "socket/next_proto.cc",
900 "socket/next_proto.h",
901 "socket/server_socket.cc",
902 "socket/server_socket.h",
905 "socket/socket_bio_adapter.cc",
906 "socket/socket_bio_adapter.h",
907 "socket/socket_descriptor.cc",
908 "socket/socket_descriptor.h",
909 "socket/socket_net_log_params.cc",
910 "socket/socket_net_log_params.h",
911 "socket/socket_options.cc",
912 "socket/socket_options.h",
913 "socket/socket_performance_watcher.h",
914 "socket/socket_performance_watcher_factory.h",
915 "socket/socket_tag.cc",
916 "socket/socket_tag.h",
917 "socket/socks5_client_socket.cc",
918 "socket/socks5_client_socket.h",
919 "socket/socks_client_socket.cc",
920 "socket/socks_client_socket.h",
921 "socket/socks_connect_job.cc",
922 "socket/socks_connect_job.h",
923 "socket/ssl_client_socket.cc",
924 "socket/ssl_client_socket.h",
925 "socket/ssl_client_socket_impl.cc",
926 "socket/ssl_client_socket_impl.h",
927 "socket/ssl_connect_job.cc",
928 "socket/ssl_connect_job.h",
929 "socket/ssl_server_socket.h",
930 "socket/ssl_server_socket_impl.cc",
931 "socket/ssl_server_socket_impl.h",
932 "socket/ssl_socket.h",
933 "socket/stream_socket.cc",
934 "socket/stream_socket.h",
935 "socket/tcp_client_socket.cc",
936 "socket/tcp_client_socket.h",
937 "socket/tcp_server_socket.cc",
938 "socket/tcp_server_socket.h",
939 "socket/tcp_socket.h",
940 "socket/transport_client_socket.cc",
941 "socket/transport_client_socket.h",
942 "socket/transport_client_socket_pool.cc",
943 "socket/transport_client_socket_pool.h",
944 "socket/transport_connect_job.cc",
945 "socket/transport_connect_job.h",
946 "socket/transport_connect_sub_job.cc",
947 "socket/transport_connect_sub_job.h",
948 "socket/udp_client_socket.cc",
949 "socket/udp_client_socket.h",
950 "socket/udp_net_log_parameters.cc",
951 "socket/udp_net_log_parameters.h",
952 "socket/udp_server_socket.cc",
953 "socket/udp_server_socket.h",
954 "socket/udp_socket.h",
955 "socket/udp_socket_global_limits.cc",
956 "socket/udp_socket_global_limits.h",
957 "socket/websocket_endpoint_lock_manager.cc",
958 "socket/websocket_endpoint_lock_manager.h",
959 "socket/websocket_transport_client_socket_pool.cc",
960 "socket/websocket_transport_client_socket_pool.h",
961 "spdy/alps_decoder.cc",
962 "spdy/alps_decoder.h",
963 "spdy/bidirectional_stream_spdy_impl.cc",
964 "spdy/bidirectional_stream_spdy_impl.h",
965 "spdy/buffered_spdy_framer.cc",
966 "spdy/buffered_spdy_framer.h",
967 "spdy/header_coalescer.cc",
968 "spdy/header_coalescer.h",
969 "spdy/http2_priority_dependencies.cc",
970 "spdy/http2_priority_dependencies.h",
971 "spdy/multiplexed_http_stream.cc",
972 "spdy/multiplexed_http_stream.h",
973 "spdy/multiplexed_session.cc",
974 "spdy/multiplexed_session.h",
975 "spdy/spdy_buffer.cc",
976 "spdy/spdy_buffer.h",
977 "spdy/spdy_buffer_producer.cc",
978 "spdy/spdy_buffer_producer.h",
979 "spdy/spdy_http_stream.cc",
980 "spdy/spdy_http_stream.h",
981 "spdy/spdy_http_utils.cc",
982 "spdy/spdy_http_utils.h",
983 "spdy/spdy_log_util.cc",
984 "spdy/spdy_log_util.h",
985 "spdy/spdy_proxy_client_socket.cc",
986 "spdy/spdy_proxy_client_socket.h",
987 "spdy/spdy_read_queue.cc",
988 "spdy/spdy_read_queue.h",
989 "spdy/spdy_session.cc",
990 "spdy/spdy_session.h",
991 "spdy/spdy_session_key.cc",
992 "spdy/spdy_session_key.h",
993 "spdy/spdy_session_pool.cc",
994 "spdy/spdy_session_pool.h",
995 "spdy/spdy_stream.cc",
996 "spdy/spdy_stream.h",
997 "spdy/spdy_write_queue.cc",
998 "spdy/spdy_write_queue.h",
999 "ssl/cert_compression.cc",
1000 "ssl/cert_compression.h",
1001 "ssl/client_cert_identity.cc",
1002 "ssl/client_cert_identity.h",
1003 "ssl/client_cert_store.h",
1004 "ssl/openssl_ssl_util.cc",
1005 "ssl/openssl_ssl_util.h",
1006 "ssl/ssl_cert_request_info.cc",
1007 "ssl/ssl_cert_request_info.h",
1008 "ssl/ssl_cipher_suite_names.cc",
1009 "ssl/ssl_cipher_suite_names.h",
1010 "ssl/ssl_client_auth_cache.cc",
1011 "ssl/ssl_client_auth_cache.h",
1012 "ssl/ssl_client_session_cache.cc",
1013 "ssl/ssl_client_session_cache.h",
1014 "ssl/ssl_config.cc",
1016 "ssl/ssl_config_service.cc",
1017 "ssl/ssl_config_service.h",
1018 "ssl/ssl_config_service_defaults.cc",
1019 "ssl/ssl_config_service_defaults.h",
1020 "ssl/ssl_connection_status_flags.h",
1021 "ssl/ssl_handshake_details.h",
1024 "ssl/ssl_key_logger.cc",
1025 "ssl/ssl_key_logger.h",
1026 "ssl/ssl_key_logger_impl.cc",
1027 "ssl/ssl_key_logger_impl.h",
1028 "ssl/ssl_legacy_crypto_fallback.h",
1029 "ssl/ssl_platform_key_util.cc",
1030 "ssl/ssl_platform_key_util.h",
1031 "ssl/ssl_private_key.cc",
1032 "ssl/ssl_private_key.h",
1033 "ssl/ssl_server_config.cc",
1034 "ssl/ssl_server_config.h",
1035 "ssl/threaded_ssl_private_key.cc",
1036 "ssl/threaded_ssl_private_key.h",
1037 "url_request/clear_site_data.cc",
1038 "url_request/clear_site_data.h",
1039 "url_request/redirect_info.cc",
1040 "url_request/redirect_info.h",
1041 "url_request/redirect_util.cc",
1042 "url_request/redirect_util.h",
1043 "url_request/referrer_policy.h",
1044 "url_request/report_sender.cc",
1045 "url_request/report_sender.h",
1046 "url_request/static_http_user_agent_settings.cc",
1047 "url_request/static_http_user_agent_settings.h",
1048 "url_request/url_request.cc",
1049 "url_request/url_request.h",
1050 "url_request/url_request_context.cc",
1051 "url_request/url_request_context.h",
1052 "url_request/url_request_context_builder.cc",
1053 "url_request/url_request_context_builder.h",
1054 "url_request/url_request_context_getter.cc",
1055 "url_request/url_request_context_getter.h",
1056 "url_request/url_request_context_getter_observer.h",
1057 "url_request/url_request_error_job.cc",
1058 "url_request/url_request_error_job.h",
1059 "url_request/url_request_filter.cc",
1060 "url_request/url_request_filter.h",
1061 "url_request/url_request_http_job.cc",
1062 "url_request/url_request_http_job.h",
1063 "url_request/url_request_interceptor.cc",
1064 "url_request/url_request_interceptor.h",
1065 "url_request/url_request_job.cc",
1066 "url_request/url_request_job.h",
1067 "url_request/url_request_job_factory.cc",
1068 "url_request/url_request_job_factory.h",
1069 "url_request/url_request_netlog_params.cc",
1070 "url_request/url_request_netlog_params.h",
1071 "url_request/url_request_redirect_job.cc",
1072 "url_request/url_request_redirect_job.h",
1073 "url_request/url_request_throttler_entry.cc",
1074 "url_request/url_request_throttler_entry.h",
1075 "url_request/url_request_throttler_entry_interface.h",
1076 "url_request/url_request_throttler_manager.cc",
1077 "url_request/url_request_throttler_manager.h",
1078 "url_request/view_cache_helper.cc",
1079 "url_request/view_cache_helper.h",
1080 "url_request/websocket_handshake_userdata_key.cc",
1081 "url_request/websocket_handshake_userdata_key.h",
1084 if (is_posix || is_fuchsia) {
1085 sources += [ "base/net_errors_posix.cc" ]
1087 if (tizen_product_tv) {
1089 "url_request/dvb_protocol_handler.cc",
1090 "url_request/dvb_protocol_handler.h",
1091 "url_request/mmf_protocol_handler.cc",
1092 "url_request/mmf_protocol_handler.h",
1096 if (disable_brotli_filter) {
1097 defines += [ "NET_DISABLE_BROTLI" ]
1099 if (disable_zstd_filter) {
1100 defines += [ "NET_DISABLE_ZSTD" ]
1104 ":cronet_buildflags",
1106 "//build:chromeos_buildflags",
1107 "//components/miracle_parameter/common",
1108 "//net/http:transport_security_state_generated_files",
1112 ":net_export_header",
1116 "//net/dns:dns_client",
1117 "//net/dns:host_resolver",
1118 "//net/dns:host_resolver_manager",
1119 "//net/dns:mdns_client",
1121 "//net/third_party/quiche",
1124 allow_circular_includes_from = [
1126 "//net/dns:dns_client",
1127 "//net/dns:host_resolver",
1128 "//net/dns:host_resolver_manager",
1129 "//net/dns:mdns_client",
1131 "//net/http:transport_security_state_generated_files",
1134 if (enable_reporting) {
1136 "network_error_logging/network_error_logging_service.cc",
1137 "network_error_logging/network_error_logging_service.h",
1138 "network_error_logging/persistent_reporting_and_nel_store.h",
1139 "reporting/reporting_browsing_data_remover.cc",
1140 "reporting/reporting_browsing_data_remover.h",
1141 "reporting/reporting_cache.cc",
1142 "reporting/reporting_cache.h",
1143 "reporting/reporting_cache_impl.cc",
1144 "reporting/reporting_cache_impl.h",
1145 "reporting/reporting_cache_observer.cc",
1146 "reporting/reporting_cache_observer.h",
1147 "reporting/reporting_context.cc",
1148 "reporting/reporting_context.h",
1149 "reporting/reporting_delegate.cc",
1150 "reporting/reporting_delegate.h",
1151 "reporting/reporting_delivery_agent.cc",
1152 "reporting/reporting_delivery_agent.h",
1153 "reporting/reporting_endpoint.cc",
1154 "reporting/reporting_endpoint.h",
1155 "reporting/reporting_endpoint_manager.cc",
1156 "reporting/reporting_endpoint_manager.h",
1157 "reporting/reporting_garbage_collector.cc",
1158 "reporting/reporting_garbage_collector.h",
1159 "reporting/reporting_header_parser.cc",
1160 "reporting/reporting_header_parser.h",
1161 "reporting/reporting_network_change_observer.cc",
1162 "reporting/reporting_network_change_observer.h",
1163 "reporting/reporting_policy.cc",
1164 "reporting/reporting_policy.h",
1165 "reporting/reporting_report.cc",
1166 "reporting/reporting_report.h",
1167 "reporting/reporting_service.cc",
1168 "reporting/reporting_service.h",
1169 "reporting/reporting_uploader.cc",
1170 "reporting/reporting_uploader.h",
1176 "android/android_http_util.cc",
1177 "android/cert_verify_result_android.cc",
1178 "android/cert_verify_result_android.h",
1179 "android/gurl_utils.cc",
1180 "android/http_auth_negotiate_android.cc",
1181 "android/http_auth_negotiate_android.h",
1182 "android/keystore.cc",
1183 "android/keystore.h",
1184 "android/network_change_notifier_android.cc",
1185 "android/network_change_notifier_android.h",
1186 "android/network_change_notifier_delegate_android.cc",
1187 "android/network_change_notifier_delegate_android.h",
1188 "android/network_change_notifier_factory_android.cc",
1189 "android/network_change_notifier_factory_android.h",
1190 "android/network_library.cc",
1191 "android/network_library.h",
1192 "android/traffic_stats.cc",
1193 "android/traffic_stats.h",
1194 "cert/cert_verify_proc_android.cc",
1195 "cert/cert_verify_proc_android.h",
1196 "cert/test_root_certs_android.cc",
1197 "cert/x509_util_android.cc",
1198 "proxy_resolution/proxy_config_service_android.cc",
1199 "proxy_resolution/proxy_config_service_android.h",
1200 "ssl/ssl_platform_key_android.cc",
1201 "ssl/ssl_platform_key_android.h",
1205 if (is_chromeos && use_nss_certs) {
1207 "cert/nss_cert_database_chromeos.cc",
1208 "cert/nss_cert_database_chromeos.h",
1209 "cert/nss_profile_filter_chromeos.cc",
1210 "cert/nss_profile_filter_chromeos.h",
1216 "cert/cert_verify_proc_ios.cc",
1217 "cert/cert_verify_proc_ios.h",
1218 "cert/test_root_certs_ios.cc",
1219 "disk_cache/blockfile/file_ios.cc",
1220 "proxy_resolution/proxy_config_service_ios.cc",
1221 "proxy_resolution/proxy_config_service_ios.h",
1225 if (is_linux || is_tizen) {
1227 "base/network_change_notifier_linux.cc",
1228 "base/network_change_notifier_linux.h",
1229 "proxy_resolution/proxy_config_service_linux.cc",
1230 "proxy_resolution/proxy_config_service_linux.h",
1234 if (is_linux || is_chromeos || is_android || is_tizen) {
1236 "base/address_map_linux.cc",
1237 "base/address_map_linux.h",
1238 "base/address_tracker_linux.cc",
1239 "base/address_tracker_linux.h",
1240 "base/network_interfaces_linux.cc",
1241 "base/network_interfaces_linux.h",
1242 "base/platform_mime_util_linux.cc",
1246 if (is_linux || is_tizen) {
1248 "base/address_map_cache_linux.cc",
1249 "base/address_map_cache_linux.h",
1255 "base/network_notification_thread_mac.cc",
1256 "base/network_notification_thread_mac.h",
1257 "cert/cert_database_mac.cc",
1258 "cert/internal/trust_store_mac.cc",
1259 "cert/internal/trust_store_mac.h",
1260 "cert/test_keychain_search_list_mac.cc",
1261 "cert/test_keychain_search_list_mac.h",
1262 "cert/test_root_certs_builtin.cc",
1263 "proxy_resolution/proxy_config_service_mac.cc",
1264 "proxy_resolution/proxy_config_service_mac.h",
1265 "ssl/client_cert_identity_mac.cc",
1266 "ssl/client_cert_identity_mac.h",
1267 "ssl/client_cert_store_mac.cc",
1268 "ssl/client_cert_store_mac.h",
1269 "ssl/ssl_platform_key_mac.cc",
1270 "ssl/ssl_platform_key_mac.h",
1276 "base/mac/url_conversions.h",
1277 "base/mac/url_conversions.mm",
1278 "base/network_change_notifier_mac.h",
1279 "base/network_change_notifier_mac.mm",
1280 "base/network_config_watcher_mac.cc",
1281 "base/network_config_watcher_mac.h",
1282 "base/platform_mime_util_mac.mm",
1283 "cert/x509_util_apple.cc",
1284 "cert/x509_util_apple.h",
1285 "proxy_resolution/proxy_resolver_mac.cc",
1286 "proxy_resolution/proxy_resolver_mac.h",
1287 "proxy_resolution/proxy_server_util_mac.cc",
1288 "proxy_resolution/proxy_server_util_mac.h",
1294 "base/file_stream_context_win.cc",
1295 "base/net_errors_win.cc",
1296 "base/network_change_notifier_win.cc",
1297 "base/network_change_notifier_win.h",
1298 "base/network_interfaces_win.cc",
1299 "base/network_interfaces_win.h",
1300 "base/platform_mime_util_win.cc",
1301 "base/winsock_init.cc",
1302 "base/winsock_init.h",
1303 "base/winsock_util.cc",
1304 "base/winsock_util.h",
1305 "cert/test_root_certs_builtin.cc",
1306 "cert/x509_util_win.cc",
1307 "cert/x509_util_win.h",
1308 "disk_cache/blockfile/file_win.cc",
1309 "disk_cache/blockfile/mapped_file_win.cc",
1310 "disk_cache/cache_util_win.cc",
1311 "disk_cache/simple/simple_util_win.cc",
1312 "http/http_auth_handler_ntlm_win.cc",
1313 "http/http_auth_sspi_win.cc",
1314 "http/http_auth_sspi_win.h",
1315 "http/url_security_manager_win.cc",
1316 "proxy_resolution/win/dhcp_pac_file_adapter_fetcher_win.cc",
1317 "proxy_resolution/win/dhcp_pac_file_adapter_fetcher_win.h",
1318 "proxy_resolution/win/dhcp_pac_file_fetcher_win.cc",
1319 "proxy_resolution/win/dhcp_pac_file_fetcher_win.h",
1320 "proxy_resolution/win/dhcpcsvc_init_win.cc",
1321 "proxy_resolution/win/dhcpcsvc_init_win.h",
1322 "proxy_resolution/win/proxy_config_service_win.cc",
1323 "proxy_resolution/win/proxy_config_service_win.h",
1324 "proxy_resolution/win/proxy_resolver_winhttp.cc",
1325 "proxy_resolution/win/proxy_resolver_winhttp.h",
1326 "proxy_resolution/win/windows_system_proxy_resolution_request.cc",
1327 "proxy_resolution/win/windows_system_proxy_resolution_request.h",
1328 "proxy_resolution/win/windows_system_proxy_resolution_service.cc",
1329 "proxy_resolution/win/windows_system_proxy_resolution_service.h",
1330 "proxy_resolution/win/windows_system_proxy_resolver.h",
1331 "proxy_resolution/win/winhttp_status.h",
1332 "socket/tcp_socket_win.cc",
1333 "socket/tcp_socket_win.h",
1334 "socket/udp_socket_win.cc",
1335 "socket/udp_socket_win.h",
1336 "ssl/client_cert_store_win.cc",
1337 "ssl/client_cert_store_win.h",
1338 "ssl/ssl_platform_key_win.cc",
1344 "http/http_auth_handler_negotiate.cc",
1345 "http/http_auth_handler_negotiate.h",
1349 if (is_posix || is_fuchsia) {
1351 "base/file_stream_context_posix.cc",
1352 "base/network_interfaces_posix.cc",
1353 "base/network_interfaces_posix.h",
1354 "base/sockaddr_util_posix.cc",
1355 "base/sockaddr_util_posix.h",
1356 "disk_cache/cache_util_posix.cc",
1357 "disk_cache/simple/simple_util_posix.cc",
1358 "http/url_security_manager_posix.cc",
1359 "socket/socket_posix.cc",
1360 "socket/socket_posix.h",
1361 "socket/tcp_socket_posix.cc",
1362 "socket/tcp_socket_posix.h",
1363 "socket/udp_socket_posix.cc",
1364 "socket/udp_socket_posix.h",
1367 sources += [ "disk_cache/blockfile/file_posix.cc" ]
1369 if (posix_bypass_mmap) {
1370 sources += [ "disk_cache/blockfile/mapped_file_bypass_mmap_posix.cc" ]
1372 sources += [ "disk_cache/blockfile/mapped_file_posix.cc" ]
1376 if (is_android || is_chromeos || is_linux || is_tizen) {
1378 "base/network_change_notifier_passive.cc",
1379 "base/network_change_notifier_passive.h",
1385 "http/http_auth_handler_ntlm_portable.cc",
1386 "http/http_auth_ntlm_mechanism.cc",
1387 "http/http_auth_ntlm_mechanism.h",
1390 "ntlm/ntlm_buffer_reader.cc",
1391 "ntlm/ntlm_buffer_reader.h",
1392 "ntlm/ntlm_buffer_writer.cc",
1393 "ntlm/ntlm_buffer_writer.h",
1394 "ntlm/ntlm_client.cc",
1395 "ntlm/ntlm_client.h",
1396 "ntlm/ntlm_constants.cc",
1397 "ntlm/ntlm_constants.h",
1401 if (use_external_gssapi) {
1403 "http/http_auth_gssapi_posix.cc",
1404 "http/http_auth_gssapi_posix.h",
1408 # Use getifaddrs() on POSIX platforms, except Linux.
1409 if (is_posix && !is_linux && !is_chromeos && !is_tizen) {
1411 "base/network_interfaces_getifaddrs.cc",
1412 "base/network_interfaces_getifaddrs.h",
1416 "base/network_interfaces_getifaddrs_android.cc",
1417 "base/network_interfaces_getifaddrs_android.h",
1422 if (chrome_root_store_supported) {
1424 "cert/internal/trust_store_chrome.cc",
1425 "cert/internal/trust_store_chrome.h",
1428 "//net/cert:root_store_proto_lite",
1429 "//net/data/ssl/chrome_root_store:gen_root_store_inc",
1433 "cert/internal/trust_store_win.cc",
1434 "cert/internal/trust_store_win.h",
1435 "third_party/mozilla_win/cert/win_util.cc",
1436 "third_party/mozilla_win/cert/win_util.h",
1441 "cert/internal/trust_store_android.cc",
1442 "cert/internal/trust_store_android.h",
1447 if (use_nss_certs) {
1449 "cert/internal/system_trust_store_nss.h",
1450 "cert/internal/trust_store_nss.cc",
1451 "cert/internal/trust_store_nss.h",
1452 "cert/nss_cert_database.cc",
1453 "cert/nss_cert_database.h",
1454 "cert/test_root_certs_builtin.cc",
1455 "cert/x509_util_nss.cc",
1456 "cert/x509_util_nss.h",
1457 "third_party/mozilla_security_manager/nsNSSCertificateDB.cpp",
1458 "third_party/mozilla_security_manager/nsNSSCertificateDB.h",
1459 "third_party/mozilla_security_manager/nsPKCS12Blob.cpp",
1460 "third_party/mozilla_security_manager/nsPKCS12Blob.h",
1461 "third_party/nss/ssl/cmpcert.cc",
1462 "third_party/nss/ssl/cmpcert.h",
1466 "ssl/client_cert_store_nss.cc",
1467 "ssl/client_cert_store_nss.h",
1468 "ssl/ssl_platform_key_nss.cc",
1469 "ssl/ssl_platform_key_nss.h",
1473 # TODO(https://crbug.com/978854): This is a public config because
1474 # multi_threaded_cert_verifier.h depends on NSS. When the linked bug is
1475 # fixed, switch this to a non-public config, so NSS usage must be explicit
1477 public_configs = [ "//build/config/linux/nss" ]
1482 "//net/data/ssl/chrome_root_store:gen_root_store_inc",
1483 "//third_party/fuchsia-sdk/sdk/pkg/async-loop-cpp",
1485 public_deps += [ "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.net.interfaces:fuchsia.net.interfaces_hlcpp" ]
1487 "base/fuchsia/network_interface_cache.cc",
1488 "base/fuchsia/network_interface_cache.h",
1489 "base/network_change_notifier_fuchsia.cc",
1490 "base/network_change_notifier_fuchsia.h",
1491 "base/network_interfaces_fuchsia.cc",
1492 "base/network_interfaces_fuchsia.h",
1493 "base/platform_mime_util_fuchsia.cc",
1494 "cert/test_root_certs_builtin.cc",
1498 if (enable_unix_sockets) {
1500 "socket/unix_domain_client_socket_posix.cc",
1501 "socket/unix_domain_client_socket_posix.h",
1502 "socket/unix_domain_server_socket_posix.cc",
1503 "socket/unix_domain_server_socket_posix.h",
1512 "CFNetwork.framework",
1513 "CoreServices.framework",
1514 "Foundation.framework",
1515 "Security.framework",
1516 "SystemConfiguration.framework",
1517 "UniformTypeIdentifiers.framework",
1524 "CFNetwork.framework",
1525 "CoreTelephony.framework",
1526 "MobileCoreServices.framework",
1527 "Security.framework",
1528 "SystemConfiguration.framework",
1529 "UniformTypeIdentifiers.framework",
1545 ldflags = [ "/DELAYLOAD:urlmon.dll" ]
1548 if (!disable_file_support) {
1550 "base/directory_lister.cc",
1551 "base/directory_lister.h",
1552 "base/directory_listing.cc",
1553 "base/directory_listing.h",
1557 if (enable_websockets) {
1559 "websockets/websocket_basic_handshake_stream.cc",
1560 "websockets/websocket_basic_handshake_stream.h",
1561 "websockets/websocket_basic_stream.cc",
1562 "websockets/websocket_basic_stream.h",
1563 "websockets/websocket_basic_stream_adapters.cc",
1564 "websockets/websocket_basic_stream_adapters.h",
1565 "websockets/websocket_channel.cc",
1566 "websockets/websocket_channel.h",
1567 "websockets/websocket_deflate_parameters.cc",
1568 "websockets/websocket_deflate_parameters.h",
1569 "websockets/websocket_deflate_predictor.h",
1570 "websockets/websocket_deflate_predictor_impl.cc",
1571 "websockets/websocket_deflate_predictor_impl.h",
1572 "websockets/websocket_deflate_stream.cc",
1573 "websockets/websocket_deflate_stream.h",
1574 "websockets/websocket_deflater.cc",
1575 "websockets/websocket_deflater.h",
1576 "websockets/websocket_errors.cc",
1577 "websockets/websocket_errors.h",
1578 "websockets/websocket_event_interface.h",
1579 "websockets/websocket_extension.cc",
1580 "websockets/websocket_extension.h",
1581 "websockets/websocket_extension_parser.cc",
1582 "websockets/websocket_extension_parser.h",
1583 "websockets/websocket_frame.cc",
1584 "websockets/websocket_frame.h",
1585 "websockets/websocket_frame_parser.cc",
1586 "websockets/websocket_frame_parser.h",
1587 "websockets/websocket_handshake_challenge.cc",
1588 "websockets/websocket_handshake_challenge.h",
1589 "websockets/websocket_handshake_constants.cc",
1590 "websockets/websocket_handshake_constants.h",
1591 "websockets/websocket_handshake_request_info.cc",
1592 "websockets/websocket_handshake_request_info.h",
1593 "websockets/websocket_handshake_response_info.cc",
1594 "websockets/websocket_handshake_response_info.h",
1595 "websockets/websocket_handshake_stream_base.cc",
1596 "websockets/websocket_handshake_stream_base.h",
1597 "websockets/websocket_handshake_stream_create_helper.cc",
1598 "websockets/websocket_handshake_stream_create_helper.h",
1599 "websockets/websocket_http2_handshake_stream.cc",
1600 "websockets/websocket_http2_handshake_stream.h",
1601 "websockets/websocket_http3_handshake_stream.cc",
1602 "websockets/websocket_http3_handshake_stream.h",
1603 "websockets/websocket_inflater.cc",
1604 "websockets/websocket_inflater.h",
1605 "websockets/websocket_quic_spdy_stream.cc",
1606 "websockets/websocket_quic_spdy_stream.h",
1607 "websockets/websocket_stream.cc",
1608 "websockets/websocket_stream.h",
1613 if (use_platform_icu_alternatives) {
1615 # Use ICU alternative on Android.
1616 sources += [ "base/net_string_util_icu_alternatives_android.cc" ]
1617 } else if (is_ios) {
1618 # Use ICU alternative on iOS.
1619 sources += [ "base/net_string_util_icu_alternatives_ios.mm" ]
1622 "ICU alternative is not implemented for platform: " + target_os)
1627 "base/filename_util_icu.cc",
1628 "base/net_string_util_icu.cc",
1633 if (!disable_brotli_filter) {
1635 "filter/brotli_source_stream.cc",
1636 "filter/brotli_source_stream.h",
1639 sources += [ "filter/brotli_source_stream_disabled.cc" ]
1643 if (!disable_zstd_filter) {
1645 "filter/zstd_source_stream.cc",
1646 "filter/zstd_source_stream.h",
1650 "filter/zstd_source_stream.h",
1651 "filter/zstd_source_stream_disabled.cc",
1655 if (!is_debug && !optimize_for_size) {
1656 configs -= [ "//build/config/compiler:default_optimization" ]
1657 configs += [ "//build/config/compiler:optimize_max" ]
1661 # net_export.h has its own build target so that code (eg
1662 # net_nqe_proto) can use it without depending on the whole of //net.
1663 source_set("net_export_header") {
1664 sources = [ "base/net_export.h" ]
1667 # Private dependencies for the //net component and for any build targets (e.g.
1668 # source sets with circular dependencies with //net) that need to share the same
1670 source_set("net_deps") {
1674 "//net/dns:dns_client",
1675 "//net/dns:host_resolver",
1676 "//net/dns:host_resolver_manager",
1677 "//net/dns:mdns_client",
1679 "//net/http:transport_security_state_generated_files",
1680 "//net/third_party/quiche",
1685 ":cronet_buildflags",
1686 ":isolation_info_proto",
1687 ":net_export_header",
1690 "//base/third_party/dynamic_annotations",
1691 "//net/base/registry_controlled_domains",
1692 "//third_party/protobuf:protobuf_lite",
1693 "//third_party/zlib",
1697 if (!disable_file_support) {
1698 public_deps += [ ":net_resources" ]
1701 public_configs = net_configs
1704 public_configs += [ "//build/linux:gio_config" ]
1708 public_deps += [ ":net_jni_headers" ]
1713 "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.hardware.network:fuchsia.hardware.network_hlcpp",
1714 "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.net.interfaces:fuchsia.net.interfaces_hlcpp",
1715 "//third_party/fuchsia-sdk/sdk/pkg/sys_cpp",
1719 if (use_platform_icu_alternatives) {
1721 public_deps += [ ":net_jni_headers" ]
1726 "//third_party/icu",
1730 if (!disable_brotli_filter) {
1731 public_deps += [ "//third_party/brotli:dec" ]
1733 public_deps += [ "//third_party/brotli:headers" ]
1736 if (!disable_zstd_filter) {
1737 public_deps += [ "//third_party/zstd:decompress" ]
1739 public_deps += [ "//third_party/zstd:headers" ]
1743 # Public dependencies for the //net component and for any build targets (e.g.
1744 # source sets with circular dependencies with //net) that need to share the same
1746 source_set("net_public_deps") {
1750 "//net/dns:dns_client",
1751 "//net/dns:host_resolver",
1752 "//net/dns:host_resolver_manager",
1753 "//net/dns:mdns_client",
1755 "//net/http:transport_security_state_generated_files",
1756 "//net/third_party/quiche",
1765 "//net/third_party/quiche",
1766 "//net/third_party/quiche:net_quic_test_tools_proto",
1767 "//net/traffic_annotation",
1768 "//third_party/boringssl",
1772 if (chrome_root_store_supported) {
1773 public_deps += [ "//net/cert:root_store_proto_lite" ]
1778 java_cpp_enum("effective_connection_type_java") {
1779 sources = [ "//net/nqe/effective_connection_type.h" ]
1783 component("uri_template") {
1785 "third_party/uri_template/uri_template.cc",
1786 "third_party/uri_template/uri_template.h",
1790 "//net/third_party/quiche",
1792 defines = [ "IS_URI_TEMPLATE_IMPL" ]
1793 public_deps = [ "//base" ]
1796 grit("net_resources") {
1797 source = "base/net_resources.grd"
1799 "grit/net_resources.h",
1800 "net_resources.pak",
1804 proto_library("net_nqe_proto") {
1805 visibility = [ ":net_public_deps" ]
1807 sources = [ "nqe/proto/network_id_proto.proto" ]
1808 cc_generator_options = "dllexport_decl=NET_EXPORT_PRIVATE:"
1809 cc_include = "net/base/net_export.h"
1810 component_build_force_source_set = true
1812 deps = [ ":net_export_header" ]
1814 defines = [ "NET_IMPLEMENTATION" ]
1816 extra_configs = [ "//build/config/compiler:wexit_time_destructors" ]
1819 proto_library("isolation_info_proto") {
1820 sources = [ "base/isolation_info.proto" ]
1823 component("extras") {
1825 "extras/sqlite/cookie_crypto_delegate.h",
1826 "extras/sqlite/sqlite_persistent_cookie_store.cc",
1827 "extras/sqlite/sqlite_persistent_cookie_store.h",
1828 "extras/sqlite/sqlite_persistent_shared_dictionary_store.cc",
1829 "extras/sqlite/sqlite_persistent_shared_dictionary_store.h",
1830 "extras/sqlite/sqlite_persistent_store_backend_base.cc",
1831 "extras/sqlite/sqlite_persistent_store_backend_base.h",
1833 defines = [ "IS_NET_EXTRAS_IMPL" ]
1834 configs += [ "//build/config/compiler:wexit_time_destructors" ]
1840 public_deps = [ ":shared_dictionary" ]
1842 if (enable_reporting) {
1844 "extras/sqlite/sqlite_persistent_reporting_and_nel_store.cc",
1845 "extras/sqlite/sqlite_persistent_reporting_and_nel_store.h",
1850 component("shared_dictionary") {
1852 "extras/shared_dictionary/shared_dictionary_info.cc",
1853 "extras/shared_dictionary/shared_dictionary_info.h",
1854 "extras/shared_dictionary/shared_dictionary_isolation_key.cc",
1855 "extras/shared_dictionary/shared_dictionary_isolation_key.h",
1856 "extras/shared_dictionary/shared_dictionary_usage_info.h",
1858 defines = [ "IS_NET_SHARED_DICTIONARY_IMPL" ]
1859 configs += [ "//build/config/compiler:wexit_time_destructors" ]
1866 static_library("preload_decoder") {
1868 "extras/preload_data/decoder.cc",
1869 "extras/preload_data/decoder.h",
1875 executable("dump_cache") {
1878 "tools/dump_cache/dump_cache.cc",
1879 "tools/dump_cache/dump_files.cc",
1880 "tools/dump_cache/dump_files.h",
1887 "//build/win:default_exe_manifest",
1893 bundle_data_from_filelist("test_support_bundle_data") {
1894 visibility = [ ":test_support" ]
1896 filelist_name = "data/test_support_bundle_data.filelist"
1900 static_library("gtest_util") {
1903 "test/gtest_util.h",
1904 "test/scoped_disable_exit_on_dfatal.cc",
1905 "test/scoped_disable_exit_on_dfatal.h",
1909 "//base/test:test_support",
1916 static_library("test_support") {
1919 "base/connection_endpoint_metadata_test_util.cc",
1920 "base/connection_endpoint_metadata_test_util.h",
1921 "base/load_timing_info_test_util.cc",
1922 "base/load_timing_info_test_util.h",
1923 "base/mock_file_stream.cc",
1924 "base/mock_file_stream.h",
1925 "base/mock_network_change_notifier.cc",
1926 "base/mock_network_change_notifier.h",
1927 "base/test_completion_callback.cc",
1928 "base/test_completion_callback.h",
1929 "base/test_data_stream.cc",
1930 "base/test_data_stream.h",
1931 "cert/mock_cert_net_fetcher.cc",
1932 "cert/mock_cert_net_fetcher.h",
1933 "cert/mock_cert_verifier.cc",
1934 "cert/mock_cert_verifier.h",
1935 "cert/mock_client_cert_verifier.cc",
1936 "cert/mock_client_cert_verifier.h",
1937 "cert/pki/mock_signature_verify_cache.cc",
1938 "cert/pki/mock_signature_verify_cache.h",
1939 "cookies/canonical_cookie_test_helpers.h",
1940 "cookies/cookie_change_dispatcher_test_helpers.cc",
1941 "cookies/cookie_change_dispatcher_test_helpers.h",
1942 "cookies/cookie_monster_store_test.cc",
1943 "cookies/cookie_monster_store_test.h",
1944 "cookies/cookie_store_change_unittest.h",
1945 "cookies/cookie_store_test_callbacks.cc",
1946 "cookies/cookie_store_test_callbacks.h",
1947 "cookies/cookie_store_test_helpers.cc",
1948 "cookies/cookie_store_test_helpers.h",
1949 "cookies/cookie_store_unittest.h",
1950 "cookies/test_cookie_access_delegate.cc",
1951 "cookies/test_cookie_access_delegate.h",
1952 "disk_cache/disk_cache_test_base.cc",
1953 "disk_cache/disk_cache_test_base.h",
1954 "disk_cache/disk_cache_test_util.cc",
1955 "disk_cache/disk_cache_test_util.h",
1956 "disk_cache/mock/mock_backend_impl.cc",
1957 "disk_cache/mock/mock_backend_impl.h",
1958 "disk_cache/mock/mock_entry_impl.cc",
1959 "disk_cache/mock/mock_entry_impl.h",
1960 "filter/filter_source_stream_test_util.cc",
1961 "filter/filter_source_stream_test_util.h",
1962 "filter/mock_source_stream.cc",
1963 "filter/mock_source_stream.h",
1964 "http/http_response_headers_test_util.cc",
1965 "http/http_response_headers_test_util.h",
1966 "http/http_stream_factory_test_util.cc",
1967 "http/http_stream_factory_test_util.h",
1968 "http/http_transaction_test_util.cc",
1969 "http/http_transaction_test_util.h",
1970 "http/mock_http_cache.cc",
1971 "http/mock_http_cache.h",
1972 "http/transport_security_state_test_util.cc",
1973 "http/transport_security_state_test_util.h",
1974 "log/test_net_log.cc",
1975 "log/test_net_log.h",
1976 "log/test_net_log_util.cc",
1977 "log/test_net_log_util.h",
1978 "nqe/network_quality_estimator_test_util.cc",
1979 "nqe/network_quality_estimator_test_util.h",
1980 "proxy_resolution/mock_pac_file_fetcher.cc",
1981 "proxy_resolution/mock_pac_file_fetcher.h",
1982 "proxy_resolution/mock_proxy_resolver.cc",
1983 "proxy_resolution/mock_proxy_resolver.h",
1984 "proxy_resolution/proxy_config_service_common_unittest.cc",
1985 "proxy_resolution/proxy_config_service_common_unittest.h",
1986 "socket/read_buffering_stream_socket.cc",
1987 "socket/read_buffering_stream_socket.h",
1988 "socket/socket_test_util.cc",
1989 "socket/socket_test_util.h",
1990 "socket/transport_client_socket_test_util.cc",
1991 "socket/transport_client_socket_test_util.h",
1992 "spdy/spdy_test_util_common.cc",
1993 "spdy/spdy_test_util_common.h",
1994 "ssl/client_cert_identity_test_util.cc",
1995 "ssl/client_cert_identity_test_util.h",
1996 "ssl/ssl_private_key_test_util.cc",
1997 "ssl/ssl_private_key_test_util.h",
1998 "ssl/test_ssl_config_service.cc",
1999 "ssl/test_ssl_config_service.h",
2000 "ssl/test_ssl_private_key.cc",
2001 "ssl/test_ssl_private_key.h",
2002 "test/cert_builder.cc",
2003 "test/cert_builder.h",
2004 "test/cert_test_util.cc",
2005 "test/cert_test_util.h",
2006 "test/ct_test_util.cc",
2007 "test/ct_test_util.h",
2008 "test/embedded_test_server/connection_tracker.cc",
2009 "test/embedded_test_server/connection_tracker.h",
2010 "test/embedded_test_server/controllable_http_response.cc",
2011 "test/embedded_test_server/controllable_http_response.h",
2012 "test/embedded_test_server/default_handlers.cc",
2013 "test/embedded_test_server/default_handlers.h",
2014 "test/embedded_test_server/embedded_test_server.cc",
2015 "test/embedded_test_server/embedded_test_server.h",
2016 "test/embedded_test_server/embedded_test_server_connection_listener.cc",
2017 "test/embedded_test_server/embedded_test_server_connection_listener.h",
2018 "test/embedded_test_server/http1_connection.cc",
2019 "test/embedded_test_server/http1_connection.h",
2020 "test/embedded_test_server/http2_connection.cc",
2021 "test/embedded_test_server/http2_connection.h",
2022 "test/embedded_test_server/http_connection.cc",
2023 "test/embedded_test_server/http_connection.h",
2024 "test/embedded_test_server/http_request.cc",
2025 "test/embedded_test_server/http_request.h",
2026 "test/embedded_test_server/http_response.cc",
2027 "test/embedded_test_server/http_response.h",
2028 "test/embedded_test_server/request_handler_util.cc",
2029 "test/embedded_test_server/request_handler_util.h",
2030 "test/embedded_test_server/simple_connection_listener.cc",
2031 "test/embedded_test_server/simple_connection_listener.h",
2032 "test/event_waiter.h",
2035 "test/net_test_suite.cc",
2036 "test/net_test_suite.h",
2037 "test/quic_simple_test_server.cc",
2038 "test/quic_simple_test_server.h",
2039 "test/revocation_builder.cc",
2040 "test/revocation_builder.h",
2041 "test/ssl_test_util.cc",
2042 "test/ssl_test_util.h",
2043 "test/test_certificate_data.h",
2044 "test/test_data_directory.cc",
2045 "test/test_data_directory.h",
2046 "test/test_doh_server.cc",
2047 "test/test_doh_server.h",
2048 "test/test_with_task_environment.h",
2049 "test/url_request/ssl_certificate_error_job.cc",
2050 "test/url_request/ssl_certificate_error_job.h",
2051 "test/url_request/url_request_failed_job.cc",
2052 "test/url_request/url_request_failed_job.h",
2053 "test/url_request/url_request_hanging_read_job.cc",
2054 "test/url_request/url_request_hanging_read_job.h",
2055 "test/url_request/url_request_mock_data_job.cc",
2056 "test/url_request/url_request_mock_data_job.h",
2057 "url_request/url_request_test_job.cc",
2058 "url_request/url_request_test_job.h",
2059 "url_request/url_request_test_util.cc",
2060 "url_request/url_request_test_util.h",
2063 if (is_linux || is_chromeos || is_android) {
2065 "base/address_tracker_linux_test_util.cc",
2066 "base/address_tracker_linux_test_util.h",
2070 configs += [ "//build/config:precompiled_headers" ]
2073 ":cronet_buildflags",
2076 "//base/test:test_support",
2079 "//net/dns:test_support",
2080 "//net/tools/tld_cleanup",
2081 "//net/traffic_annotation:test_support",
2088 ":quic_test_flags_utils",
2089 ":simple_quic_tools",
2090 "//net/http:transport_security_state_unittest_data_default",
2091 "//third_party/zlib",
2094 allow_circular_includes_from = [ "//net/dns:test_support" ]
2096 # Data dependencies shared with suites other than net_unittests.
2098 "data/cert_net_fetcher_impl_unittest/",
2100 "data/ov_name_constraints/",
2101 "data/parse_certificate_unittest/",
2103 "data/url_request_unittest/",
2108 frameworks = [ "Security.framework" ]
2112 deps += [ ":test_support_bundle_data" ]
2115 if (use_nss_certs) {
2116 configs += [ "//build/config/linux/nss" ]
2119 if (enable_websockets || (is_cronet_build && !is_ios)) {
2121 "test/spawned_test_server/base_test_server.cc",
2122 "test/spawned_test_server/base_test_server.h",
2123 "test/spawned_test_server/spawned_test_server.h",
2127 public_configs = [ ":net_test_config" ]
2129 if (use_remote_test_server) {
2131 "test/spawned_test_server/remote_test_server.cc",
2132 "test/spawned_test_server/remote_test_server.h",
2133 "test/spawned_test_server/remote_test_server_spawner_request.cc",
2134 "test/spawned_test_server/remote_test_server_spawner_request.h",
2136 } else if (!is_ios) {
2138 "test/spawned_test_server/local_test_server.cc",
2139 "test/spawned_test_server/local_test_server.h",
2142 sources += [ "test/spawned_test_server/local_test_server_win.cc" ]
2143 } else if (is_posix || is_fuchsia) {
2144 sources += [ "test/spawned_test_server/local_test_server_posix.cc" ]
2148 if (enable_python_utils) {
2150 "test/python_utils.cc",
2151 "test/python_utils.h",
2155 if (use_nss_certs) {
2156 sources += [ "test/cert_test_util_nss.cc" ]
2159 if (!disable_file_support) {
2161 "test/url_request/url_request_mock_http_job.cc",
2162 "test/url_request/url_request_mock_http_job.h",
2163 "test/url_request/url_request_test_job_backed_by_file.cc",
2164 "test/url_request/url_request_test_job_backed_by_file.h",
2168 if (enable_reporting) {
2170 "network_error_logging/mock_persistent_nel_store.cc",
2171 "network_error_logging/mock_persistent_nel_store.h",
2172 "network_error_logging/network_error_logging_test_util.cc",
2173 "network_error_logging/network_error_logging_test_util.h",
2174 "reporting/mock_persistent_reporting_store.cc",
2175 "reporting/mock_persistent_reporting_store.h",
2176 "reporting/reporting_test_util.cc",
2177 "reporting/reporting_test_util.h",
2182 if (!is_ios && !is_android) {
2183 executable("cert_verify_tool") {
2186 "tools/cert_verify_tool/cert_verify_tool.cc",
2187 "tools/cert_verify_tool/cert_verify_tool_util.cc",
2188 "tools/cert_verify_tool/cert_verify_tool_util.h",
2189 "tools/cert_verify_tool/verify_using_cert_verify_proc.cc",
2190 "tools/cert_verify_tool/verify_using_cert_verify_proc.h",
2191 "tools/cert_verify_tool/verify_using_path_builder.cc",
2192 "tools/cert_verify_tool/verify_using_path_builder.h",
2199 "//build/win:default_exe_manifest",
2203 frameworks = [ "Security.framework" ]
2207 proto_library("cert_verify_comparison_tool_proto") {
2208 sources = [ "tools/cert_verify_tool/dumper.proto" ]
2210 visibility = [ ":cert_verify_comparison_tool" ]
2213 executable("cert_verify_comparison_tool") {
2216 "tools/cert_verify_tool/cert_verify_comparision_tool.cc",
2217 "tools/cert_verify_tool/cert_verify_tool_util.cc",
2218 "tools/cert_verify_tool/cert_verify_tool_util.h",
2219 "tools/cert_verify_tool/verify_using_cert_verify_proc.cc",
2220 "tools/cert_verify_tool/verify_using_cert_verify_proc.h",
2224 ":cert_verify_comparison_tool_proto",
2228 "//build/win:default_exe_manifest",
2232 frameworks = [ "Security.framework" ]
2236 executable("crash_cache") {
2238 sources = [ "tools/crash_cache/crash_cache.cc" ]
2244 "//build/win:default_exe_manifest",
2248 executable("hpack_example_generator") {
2250 sources = [ "spdy/fuzzing/hpack_example_generator.cc" ]
2256 "//build/win:default_exe_manifest",
2260 executable("net_watcher") {
2262 sources = [ "tools/net_watcher/net_watcher.cc" ]
2266 "//build:chromeos_buildflags",
2267 "//build/win:default_exe_manifest",
2271 executable("run_testserver") {
2273 sources = [ "tools/testserver/run_testserver.cc" ]
2277 "//base/test:test_support",
2278 "//build/win:default_exe_manifest",
2283 executable("stress_cache") {
2285 sources = [ "tools/stress_cache/stress_cache.cc" ]
2291 "//build/win:default_exe_manifest",
2295 executable("tld_cleanup") {
2296 sources = [ "tools/tld_cleanup/tld_cleanup.cc" ]
2301 "//build/win:default_exe_manifest",
2302 "//net/tools/tld_cleanup",
2307 if (use_external_gssapi) {
2308 # In order for the tests to be reliable, these two targets cannot depend on a
2309 # valid GSSAPI library. This is easy to achieve on most platforms. But on
2310 # macOS care must be taken to not depend directly or indirectly on
2311 # GSS.framework. This is suprisingly easy to get wrong since
2312 # Security.framework is such a common dependency and it indirectly depends on
2314 shared_library("test_gssapi") {
2317 "tools/gssapi/gss_import_name.cc",
2318 "tools/gssapi/gss_methods.cc",
2319 "tools/gssapi/gss_types.h",
2323 shared_library("test_badgssapi") {
2326 "tools/gssapi/gss_methods.cc",
2327 "tools/gssapi/gss_types.h",
2332 if (is_linux || is_chromeos || is_mac) {
2333 executable("cachetool") {
2335 sources = [ "tools/cachetool/cachetool.cc" ]
2343 executable("content_decoder_tool") {
2346 "tools/content_decoder_tool/content_decoder_tool.cc",
2347 "tools/content_decoder_tool/content_decoder_tool.h",
2348 "tools/content_decoder_tool/content_decoder_tool_bin.cc",
2360 generate_jni("net_jni_headers") {
2362 "android/java/src/org/chromium/net/AndroidCertVerifyResult.java",
2363 "android/java/src/org/chromium/net/AndroidKeyStore.java",
2364 "android/java/src/org/chromium/net/AndroidNetworkLibrary.java",
2365 "android/java/src/org/chromium/net/AndroidTrafficStats.java",
2366 "android/java/src/org/chromium/net/DnsStatus.java",
2367 "android/java/src/org/chromium/net/GURLUtils.java",
2368 "android/java/src/org/chromium/net/HttpNegotiateAuthenticator.java",
2369 "android/java/src/org/chromium/net/HttpUtil.java",
2370 "android/java/src/org/chromium/net/NetStringUtil.java",
2371 "android/java/src/org/chromium/net/NetworkActiveNotifier.java",
2372 "android/java/src/org/chromium/net/NetworkChangeNotifier.java",
2373 "android/java/src/org/chromium/net/ProxyChangeListener.java",
2374 "android/java/src/org/chromium/net/X509Util.java",
2379 if (is_android || is_linux || is_chromeos) {
2380 executable("disk_cache_memory_test") {
2382 sources = [ "tools/disk_cache_memory_test/disk_cache_memory_test.cc" ]
2390 source_set("spdy_test_tools") {
2393 "spdy/fuzzing/hpack_fuzz_util.cc",
2394 "spdy/fuzzing/hpack_fuzz_util.h",
2404 source_set("quic_test_flags_utils") {
2407 "quic/platform/impl/quic_test_flags_utils.cc",
2408 "quic/platform/impl/quic_test_flags_utils.h",
2413 source_set("quic_test_tools") {
2416 "quic/crypto_test_utils_chromium.cc",
2417 "quic/crypto_test_utils_chromium.h",
2418 "quic/mock_crypto_client_stream.cc",
2419 "quic/mock_crypto_client_stream.h",
2420 "quic/mock_crypto_client_stream_factory.cc",
2421 "quic/mock_crypto_client_stream_factory.h",
2422 "quic/mock_decrypter.cc",
2423 "quic/mock_decrypter.h",
2424 "quic/mock_encrypter.cc",
2425 "quic/mock_encrypter.h",
2426 "quic/mock_quic_context.cc",
2427 "quic/mock_quic_context.h",
2428 "quic/test_task_runner.cc",
2429 "quic/test_task_runner.h",
2433 ":simple_quic_tools",
2436 "//crypto:test_support",
2439 "//third_party/boringssl",
2440 "//third_party/protobuf:protobuf_lite",
2441 "//third_party/quic_trace:quic_trace_proto",
2444 ":quic_test_flags_utils",
2445 "//net/third_party/quiche:quiche_test_support",
2449 source_set("simple_quic_tools") {
2452 "tools/quic/quic_client_message_loop_network_helper.cc",
2453 "tools/quic/quic_client_message_loop_network_helper.h",
2454 "tools/quic/quic_simple_client.cc",
2455 "tools/quic/quic_simple_client.h",
2456 "tools/quic/quic_simple_server.cc",
2457 "tools/quic/quic_simple_server.h",
2458 "tools/quic/quic_simple_server_packet_writer.cc",
2459 "tools/quic/quic_simple_server_packet_writer.h",
2460 "tools/quic/quic_simple_server_session_helper.cc",
2461 "tools/quic/quic_simple_server_session_helper.h",
2462 "tools/quic/quic_simple_server_socket.cc",
2463 "tools/quic/quic_simple_server_socket.h",
2464 "tools/quic/synchronous_host_resolver.cc",
2465 "tools/quic/synchronous_host_resolver.h",
2470 "//base/third_party/dynamic_annotations",
2471 "//net/third_party/quiche:quiche_tool_support",
2472 "//third_party/protobuf:protobuf_lite",
2475 public_deps = [ "//net/third_party/quiche:quiche_tool_support" ]
2479 executable("quic_client") {
2481 sources = [ "tools/quic/quic_simple_client_bin.cc" ]
2484 ":simple_quic_tools",
2486 "//build/win:default_exe_manifest",
2487 "//net/third_party/quiche:quic_client_core",
2491 executable("quic_server") {
2494 "tools/quic/quic_simple_server_backend_factory.cc",
2495 "tools/quic/quic_simple_server_backend_factory.h",
2496 "tools/quic/quic_simple_server_bin.cc",
2500 ":simple_quic_tools",
2502 "//build/win:default_exe_manifest",
2503 "//net/third_party/quiche:quic_server_core",
2504 "//third_party/boringssl",
2505 "//third_party/protobuf:protobuf_lite",
2508 executable("crypto_message_printer") {
2510 sources = [ "tools/quic/crypto_message_printer_bin.cc" ]
2514 "//build/win:default_exe_manifest",
2520 bundle_data_from_filelist("net_test_bundle_data") {
2522 filelist_name = "data/test_bundle_data.filelist"
2526 test("net_unittests") {
2528 "base/address_family_unittest.cc",
2529 "base/address_list_unittest.cc",
2530 "base/backoff_entry_serializer_unittest.cc",
2531 "base/backoff_entry_unittest.cc",
2532 "base/chunked_upload_data_stream_unittest.cc",
2533 "base/data_url_unittest.cc",
2534 "base/datagram_buffer_unittest.cc",
2535 "base/elements_upload_data_stream_unittest.cc",
2536 "base/expiring_cache_unittest.cc",
2537 "base/file_stream_unittest.cc",
2538 "base/filename_util_unittest.cc",
2539 "base/host_mapping_rules_unittest.cc",
2540 "base/host_port_pair_unittest.cc",
2541 "base/interval_test.cc",
2542 "base/ip_address_unittest.cc",
2543 "base/ip_endpoint_unittest.cc",
2544 "base/isolation_info_unittest.cc",
2545 "base/lookup_string_in_fixed_set_unittest.cc",
2546 "base/mime_sniffer_unittest.cc",
2547 "base/mime_util_unittest.cc",
2548 "base/net_errors_unittest.cc",
2549 "base/net_string_util_unittest.cc",
2550 "base/network_activity_monitor_unittest.cc",
2551 "base/network_anonymization_key_unittest.cc",
2552 "base/network_change_notifier_unittest.cc",
2553 "base/network_delegate_unittest.cc",
2554 "base/network_interfaces_unittest.cc",
2555 "base/network_isolation_key_unittest.cc",
2556 "base/parse_number_unittest.cc",
2557 "base/port_util_unittest.cc",
2558 "base/prioritized_dispatcher_unittest.cc",
2559 "base/prioritized_task_runner_unittest.cc",
2560 "base/priority_queue_unittest.cc",
2561 "base/proxy_chain_unittest.cc",
2562 "base/proxy_server_unittest.cc",
2563 "base/proxy_string_util_unittest.cc",
2564 "base/registry_controlled_domains/registry_controlled_domain_unittest.cc",
2565 "base/scheme_host_port_matcher_rule_unittest.cc",
2566 "base/scheme_host_port_matcher_unittest.cc",
2567 "base/schemeful_site_unittest.cc",
2568 "base/test_completion_callback_unittest.cc",
2569 "base/test_proxy_delegate.cc",
2570 "base/test_proxy_delegate.h",
2571 "base/upload_bytes_element_reader_unittest.cc",
2572 "base/upload_file_element_reader_unittest.cc",
2573 "base/url_search_params_unittest.cc",
2574 "base/url_util_unittest.cc",
2575 "cert/caching_cert_verifier_unittest.cc",
2576 "cert/cert_and_ct_verifier_unittest.cc",
2577 "cert/cert_database_unittest.cc",
2578 "cert/cert_verifier_unittest.cc",
2579 "cert/cert_verify_proc_builtin_unittest.cc",
2580 "cert/cert_verify_proc_unittest.cc",
2581 "cert/coalescing_cert_verifier_unittest.cc",
2582 "cert/crl_set_unittest.cc",
2583 "cert/ct_log_response_parser_unittest.cc",
2584 "cert/ct_log_verifier_unittest.cc",
2585 "cert/ct_objects_extractor_unittest.cc",
2586 "cert/ct_serialization_unittest.cc",
2587 "cert/ev_root_ca_metadata_unittest.cc",
2588 "cert/internal/cert_issuer_source_aia_unittest.cc",
2589 "cert/internal/cert_issuer_source_sync_unittest.cc",
2590 "cert/internal/revocation_checker_unittest.cc",
2591 "cert/internal/system_trust_store_unittest.cc",
2592 "cert/known_roots_unittest.cc",
2593 "cert/merkle_audit_proof_unittest.cc",
2594 "cert/merkle_tree_leaf_unittest.cc",
2595 "cert/multi_log_ct_verifier_unittest.cc",
2596 "cert/multi_threaded_cert_verifier_unittest.cc",
2597 "cert/pem_unittest.cc",
2598 "cert/pki/cert_issuer_source_static_unittest.cc",
2599 "cert/pki/cert_issuer_source_sync_unittest.h",
2600 "cert/pki/certificate_policies_unittest.cc",
2601 "cert/pki/crl_unittest.cc",
2602 "cert/pki/extended_key_usage_unittest.cc",
2603 "cert/pki/general_names_unittest.cc",
2604 "cert/pki/ip_util_unittest.cc",
2605 "cert/pki/name_constraints_unittest.cc",
2606 "cert/pki/nist_pkits_unittest.cc",
2607 "cert/pki/nist_pkits_unittest.h",
2608 "cert/pki/ocsp_unittest.cc",
2609 "cert/pki/parse_certificate_unittest.cc",
2610 "cert/pki/parse_name_unittest.cc",
2611 "cert/pki/parsed_certificate_unittest.cc",
2612 "cert/pki/path_builder_pkits_unittest.cc",
2613 "cert/pki/path_builder_unittest.cc",
2614 "cert/pki/path_builder_verify_certificate_chain_unittest.cc",
2615 "cert/pki/revocation_util_unittest.cc",
2616 "cert/pki/signature_algorithm_unittest.cc",
2617 "cert/pki/simple_path_builder_delegate_unittest.cc",
2618 "cert/pki/string_util_unittest.cc",
2619 "cert/pki/test_helpers.cc",
2620 "cert/pki/test_helpers.h",
2621 "cert/pki/trust_store_collection_unittest.cc",
2622 "cert/pki/trust_store_unittest.cc",
2623 "cert/pki/verify_certificate_chain_pkits_unittest.cc",
2624 "cert/pki/verify_certificate_chain_typed_unittest.h",
2625 "cert/pki/verify_certificate_chain_unittest.cc",
2626 "cert/pki/verify_name_match_unittest.cc",
2627 "cert/pki/verify_signed_data_unittest.cc",
2628 "cert/signed_certificate_timestamp_unittest.cc",
2629 "cert/symantec_certs_unittest.cc",
2630 "cert/test_root_certs_unittest.cc",
2631 "cert/time_conversions_unittest.cc",
2632 "cert/x509_cert_types_unittest.cc",
2633 "cert/x509_certificate_unittest.cc",
2634 "cert/x509_util_unittest.cc",
2635 "cert_net/cert_net_fetcher_url_request_unittest.cc",
2636 "cookies/canonical_cookie_unittest.cc",
2637 "cookies/cookie_constants_unittest.cc",
2638 "cookies/cookie_deletion_info_unittest.cc",
2639 "cookies/cookie_inclusion_status_unittest.cc",
2640 "cookies/cookie_monster_unittest.cc",
2641 "cookies/cookie_options_unittest.cc",
2642 "cookies/cookie_partition_key_collection_unittest.cc",
2643 "cookies/cookie_partition_key_unittest.cc",
2644 "cookies/cookie_util_unittest.cc",
2645 "cookies/parsed_cookie_unittest.cc",
2646 "cookies/site_for_cookies_unittest.cc",
2647 "cookies/static_cookie_policy_unittest.cc",
2648 "der/encode_values_unittest.cc",
2649 "der/input_unittest.cc",
2650 "der/parse_values_unittest.cc",
2651 "der/parser_unittest.cc",
2652 "disk_cache/backend_cleanup_tracker_unittest.cc",
2653 "disk_cache/backend_unittest.cc",
2654 "disk_cache/blockfile/addr_unittest.cc",
2655 "disk_cache/blockfile/bitmap_unittest.cc",
2656 "disk_cache/blockfile/block_files_unittest.cc",
2657 "disk_cache/blockfile/mapped_file_unittest.cc",
2658 "disk_cache/blockfile/stats_unittest.cc",
2659 "disk_cache/blockfile/storage_block_unittest.cc",
2660 "disk_cache/cache_util_unittest.cc",
2661 "disk_cache/entry_unittest.cc",
2662 "disk_cache/simple/simple_file_enumerator_unittest.cc",
2663 "disk_cache/simple/simple_file_tracker_unittest.cc",
2664 "disk_cache/simple/simple_index_file_unittest.cc",
2665 "disk_cache/simple/simple_index_unittest.cc",
2666 "disk_cache/simple/simple_test_util.cc",
2667 "disk_cache/simple/simple_test_util.h",
2668 "disk_cache/simple/simple_util_unittest.cc",
2669 "disk_cache/simple/simple_version_upgrade_unittest.cc",
2670 "filter/filter_source_stream_unittest.cc",
2671 "filter/gzip_source_stream_unittest.cc",
2672 "first_party_sets/addition_overlaps_union_find_unittest.cc",
2673 "first_party_sets/first_party_set_entry_override_unittest.cc",
2674 "first_party_sets/first_party_sets_cache_filter_unittest.cc",
2675 "first_party_sets/first_party_sets_context_config_unittest.cc",
2676 "first_party_sets/global_first_party_sets_unittest.cc",
2677 "http/alternative_service_unittest.cc",
2678 "http/bidirectional_stream_unittest.cc",
2679 "http/broken_alternative_services_unittest.cc",
2680 "http/http_auth_cache_unittest.cc",
2681 "http/http_auth_challenge_tokenizer_unittest.cc",
2682 "http/http_auth_controller_unittest.cc",
2683 "http/http_auth_filter_unittest.cc",
2684 "http/http_auth_handler_basic_unittest.cc",
2685 "http/http_auth_handler_digest_unittest.cc",
2686 "http/http_auth_handler_factory_unittest.cc",
2687 "http/http_auth_handler_mock.cc",
2688 "http/http_auth_handler_mock.h",
2689 "http/http_auth_handler_unittest.cc",
2690 "http/http_auth_multi_round_parse_unittest.cc",
2691 "http/http_auth_preferences_unittest.cc",
2692 "http/http_auth_unittest.cc",
2693 "http/http_basic_state_unittest.cc",
2694 "http/http_byte_range_unittest.cc",
2695 "http/http_cache_unittest.cc",
2696 "http/http_cache_writers_unittest.cc",
2697 "http/http_chunked_decoder_unittest.cc",
2698 "http/http_content_disposition_unittest.cc",
2699 "http/http_log_util_unittest.cc",
2700 "http/http_network_layer_unittest.cc",
2701 "http/http_network_transaction_unittest.cc",
2702 "http/http_no_vary_search_data_unittest.cc",
2703 "http/http_proxy_client_socket_unittest.cc",
2704 "http/http_proxy_connect_job_unittest.cc",
2705 "http/http_request_headers_unittest.cc",
2706 "http/http_request_info_unittest.cc",
2707 "http/http_response_body_drainer_unittest.cc",
2708 "http/http_response_headers_unittest.cc",
2709 "http/http_response_info_unittest.cc",
2710 "http/http_security_headers_unittest.cc",
2711 "http/http_server_properties_manager_unittest.cc",
2712 "http/http_server_properties_unittest.cc",
2713 "http/http_status_code_unittest.cc",
2714 "http/http_stream_factory_job_controller_unittest.cc",
2715 "http/http_stream_factory_unittest.cc",
2716 "http/http_stream_parser_unittest.cc",
2717 "http/http_stream_request_unittest.cc",
2718 "http/http_util_unittest.cc",
2719 "http/http_vary_data_unittest.cc",
2720 "http/mock_allow_http_auth_preferences.cc",
2721 "http/mock_allow_http_auth_preferences.h",
2722 "http/test_upload_data_stream_not_allow_http1.cc",
2723 "http/test_upload_data_stream_not_allow_http1.h",
2724 "http/transport_security_persister_unittest.cc",
2725 "http/transport_security_state_unittest.cc",
2726 "http/url_security_manager_unittest.cc",
2727 "log/file_net_log_observer_unittest.cc",
2728 "log/net_log_capture_mode_unittest.cc",
2729 "log/net_log_unittest.cc",
2730 "log/net_log_util_unittest.cc",
2731 "log/net_log_values_unittest.cc",
2732 "nqe/effective_connection_type_unittest.cc",
2733 "nqe/event_creator_unittest.cc",
2734 "nqe/network_id_unittest.cc",
2735 "nqe/network_qualities_prefs_manager_unittest.cc",
2736 "nqe/network_quality_estimator_params_unittest.cc",
2737 "nqe/network_quality_estimator_unittest.cc",
2738 "nqe/network_quality_estimator_util_unittest.cc",
2739 "nqe/network_quality_store_unittest.cc",
2740 "nqe/observation_buffer_unittest.cc",
2741 "nqe/socket_watcher_unittest.cc",
2742 "nqe/throughput_analyzer_unittest.cc",
2743 "proxy_resolution/configured_proxy_resolution_service_unittest.cc",
2744 "proxy_resolution/multi_threaded_proxy_resolver_unittest.cc",
2745 "proxy_resolution/network_delegate_error_observer_unittest.cc",
2746 "proxy_resolution/pac_file_decider_unittest.cc",
2747 "proxy_resolution/pac_file_fetcher_impl_unittest.cc",
2748 "proxy_resolution/proxy_bypass_rules_unittest.cc",
2749 "proxy_resolution/proxy_config_unittest.cc",
2750 "proxy_resolution/proxy_info_unittest.cc",
2751 "proxy_resolution/proxy_list_unittest.cc",
2752 "quic/bidirectional_stream_quic_impl_unittest.cc",
2753 "quic/crypto/proof_test_chromium.cc",
2754 "quic/crypto/proof_verifier_chromium_test.cc",
2755 "quic/dedicated_web_transport_http3_client_test.cc",
2756 "quic/mock_quic_data.cc",
2757 "quic/mock_quic_data.h",
2758 "quic/network_connection_unittest.cc",
2759 "quic/platform/impl/quic_chromium_clock_test.cc",
2760 "quic/properties_based_quic_server_info_test.cc",
2761 "quic/quic_address_mismatch_test.cc",
2762 "quic/quic_chromium_alarm_factory_test.cc",
2763 "quic/quic_chromium_client_session_peer.cc",
2764 "quic/quic_chromium_client_session_peer.h",
2765 "quic/quic_chromium_client_session_test.cc",
2766 "quic/quic_chromium_client_stream_test.cc",
2767 "quic/quic_chromium_connection_helper_test.cc",
2768 "quic/quic_clock_skew_detector_test.cc",
2769 "quic/quic_end_to_end_unittest.cc",
2770 "quic/quic_http_stream_test.cc",
2771 "quic/quic_http_utils_test.cc",
2772 "quic/quic_network_transaction_unittest.cc",
2773 "quic/quic_proxy_client_socket_unittest.cc",
2774 "quic/quic_stream_factory_peer.cc",
2775 "quic/quic_stream_factory_peer.h",
2776 "quic/quic_stream_factory_test.cc",
2777 "quic/quic_test_packet_maker.cc",
2778 "quic/quic_test_packet_maker.h",
2779 "quic/quic_test_packet_printer.cc",
2780 "quic/quic_test_packet_printer.h",
2781 "quic/set_quic_flag_test.cc",
2782 "quic/test_quic_crypto_client_config_handle.cc",
2783 "quic/test_quic_crypto_client_config_handle.h",
2784 "socket/client_socket_pool_base_unittest.cc",
2785 "socket/client_socket_pool_unittest.cc",
2786 "socket/connect_job_factory_unittest.cc",
2787 "socket/connect_job_test_util.cc",
2788 "socket/connect_job_test_util.h",
2789 "socket/connect_job_unittest.cc",
2790 "socket/mock_client_socket_pool_manager.cc",
2791 "socket/mock_client_socket_pool_manager.h",
2792 "socket/sequenced_socket_data_unittest.cc",
2793 "socket/socket_bio_adapter_unittest.cc",
2794 "socket/socket_tag_unittest.cc",
2795 "socket/socks5_client_socket_unittest.cc",
2796 "socket/socks_client_socket_unittest.cc",
2797 "socket/socks_connect_job_unittest.cc",
2798 "socket/ssl_client_socket_unittest.cc",
2799 "socket/ssl_connect_job_unittest.cc",
2800 "socket/ssl_server_socket_unittest.cc",
2801 "socket/tcp_client_socket_unittest.cc",
2802 "socket/tcp_server_socket_unittest.cc",
2803 "socket/tcp_socket_unittest.cc",
2804 "socket/transport_client_socket_pool_test_util.cc",
2805 "socket/transport_client_socket_pool_test_util.h",
2806 "socket/transport_client_socket_pool_unittest.cc",
2807 "socket/transport_client_socket_unittest.cc",
2808 "socket/transport_connect_job_unittest.cc",
2809 "socket/udp_socket_unittest.cc",
2810 "socket/websocket_endpoint_lock_manager_unittest.cc",
2811 "socket/websocket_transport_client_socket_pool_unittest.cc",
2812 "spdy/alps_decoder_test.cc",
2813 "spdy/bidirectional_stream_spdy_impl_unittest.cc",
2814 "spdy/buffered_spdy_framer_unittest.cc",
2815 "spdy/fuzzing/hpack_fuzz_util_test.cc",
2816 "spdy/header_coalescer_test.cc",
2817 "spdy/http2_priority_dependencies_unittest.cc",
2818 "spdy/spdy_buffer_unittest.cc",
2819 "spdy/spdy_http_stream_unittest.cc",
2820 "spdy/spdy_http_utils_unittest.cc",
2821 "spdy/spdy_log_util_unittest.cc",
2822 "spdy/spdy_network_transaction_unittest.cc",
2823 "spdy/spdy_proxy_client_socket_unittest.cc",
2824 "spdy/spdy_read_queue_unittest.cc",
2825 "spdy/spdy_session_key_unittest.cc",
2826 "spdy/spdy_session_pool_unittest.cc",
2827 "spdy/spdy_session_test_util.cc",
2828 "spdy/spdy_session_test_util.h",
2829 "spdy/spdy_session_unittest.cc",
2830 "spdy/spdy_stream_test_util.cc",
2831 "spdy/spdy_stream_test_util.h",
2832 "spdy/spdy_stream_unittest.cc",
2833 "spdy/spdy_write_queue_unittest.cc",
2834 "ssl/client_cert_identity_unittest.cc",
2835 "ssl/client_cert_store_unittest-inl.h",
2836 "ssl/ssl_cipher_suite_names_unittest.cc",
2837 "ssl/ssl_client_auth_cache_unittest.cc",
2838 "ssl/ssl_client_session_cache_unittest.cc",
2839 "ssl/ssl_config_service_unittest.cc",
2840 "ssl/ssl_config_unittest.cc",
2841 "ssl/ssl_connection_status_flags_unittest.cc",
2842 "ssl/ssl_platform_key_util_unittest.cc",
2843 "test/embedded_test_server/embedded_test_server_unittest.cc",
2844 "test/embedded_test_server/http_request_unittest.cc",
2845 "test/embedded_test_server/http_response_unittest.cc",
2846 "test/run_all_unittests.cc",
2847 "third_party/nist-pkits/pkits_testcases-inl.h",
2848 "third_party/uri_template/uri_template_test.cc",
2849 "tools/content_decoder_tool/content_decoder_tool.cc",
2850 "tools/content_decoder_tool/content_decoder_tool.h",
2851 "tools/content_decoder_tool/content_decoder_tool_unittest.cc",
2852 "tools/quic/quic_simple_client_test.cc",
2853 "tools/tld_cleanup/tld_cleanup_util_unittest.cc",
2854 "url_request/redirect_info_unittest.cc",
2855 "url_request/redirect_util_unittest.cc",
2856 "url_request/report_sender_unittest.cc",
2857 "url_request/url_request_context_builder_unittest.cc",
2858 "url_request/url_request_filter_unittest.cc",
2859 "url_request/url_request_http_job_unittest.cc",
2860 "url_request/url_request_job_factory_unittest.cc",
2861 "url_request/url_request_job_unittest.cc",
2862 "url_request/url_request_quic_unittest.cc",
2863 "url_request/url_request_throttler_simulation_unittest.cc",
2864 "url_request/url_request_throttler_test_support.cc",
2865 "url_request/url_request_throttler_test_support.h",
2866 "url_request/url_request_throttler_unittest.cc",
2867 "url_request/url_request_unittest.cc",
2868 "url_request/view_cache_helper_unittest.cc",
2873 "android/dummy_spnego_authenticator.cc",
2874 "android/dummy_spnego_authenticator.h",
2875 "android/http_auth_negotiate_android_unittest.cc",
2876 "android/network_change_notifier_android_unittest.cc",
2877 "android/network_library_unittest.cc",
2878 "android/traffic_stats_unittest.cc",
2879 "cert/cert_verify_proc_android_unittest.cc",
2880 "proxy_resolution/proxy_config_service_android_unittest.cc",
2881 "ssl/ssl_platform_key_android_unittest.cc",
2885 if (is_chromeos_ash && use_nss_certs) {
2887 "cert/nss_cert_database_chromeos_unittest.cc",
2888 "cert/nss_profile_filter_chromeos_unittest.cc",
2894 "base/network_change_notifier_linux_unittest.cc",
2895 "proxy_resolution/proxy_config_service_linux_unittest.cc",
2899 if (is_linux || is_chromeos) {
2901 "base/address_tracker_linux_unittest.cc",
2902 "base/network_interfaces_linux_unittest.cc",
2908 "cert/internal/trust_store_mac_unittest.cc",
2909 "ssl/client_cert_store_mac_unittest.cc",
2910 "ssl/ssl_platform_key_mac_unittest.cc",
2916 "cert/x509_util_apple_unittest.cc",
2917 "proxy_resolution/proxy_server_util_mac_unittest.cc",
2923 "base/network_change_notifier_win_unittest.cc",
2924 "base/network_interfaces_win_unittest.cc",
2925 "http/http_auth_sspi_win_unittest.cc",
2926 "http/mock_sspi_library_win.cc",
2927 "http/mock_sspi_library_win.h",
2928 "proxy_resolution/win/dhcp_pac_file_adapter_fetcher_win_unittest.cc",
2929 "proxy_resolution/win/dhcp_pac_file_fetcher_win_unittest.cc",
2930 "proxy_resolution/win/proxy_config_service_win_unittest.cc",
2931 "proxy_resolution/win/windows_system_proxy_resolution_service_unittest.cc",
2932 "ssl/client_cert_store_win_unittest.cc",
2933 "ssl/ssl_platform_key_win_unittest.cc",
2937 configs += [ "//build/config:precompiled_headers" ]
2941 ":cronet_buildflags",
2945 ":simple_quic_tools",
2950 "//base/third_party/dynamic_annotations",
2951 "//build:chromeos_buildflags",
2953 "//crypto:test_support",
2954 "//net/base/registry_controlled_domains",
2955 "//net/base/registry_controlled_domains:lookup_strings_test_sets",
2957 "//net/dns/public:tests",
2958 "//net/http:transport_security_state_unittest_data",
2959 "//net/http:transport_security_state_unittest_data_default",
2960 "//net/third_party/quiche:quiche_tests",
2961 "//net/tools/huffman_trie:huffman_trie_generator_sources",
2964 "//third_party/anonymous_tokens:anonymous_tokens_tests",
2965 "//third_party/protobuf:protobuf_lite",
2966 "//third_party/zlib",
2971 if (!is_cronet_build) {
2973 "extras/shared_dictionary/shared_dictionary_isolation_key_unittest.cc",
2974 "extras/sqlite/sqlite_persistent_cookie_store_unittest.cc",
2975 "extras/sqlite/sqlite_persistent_shared_dictionary_store_unittest.cc",
2976 "log/trace_net_log_observer_unittest.cc",
2981 "//components/sqlite_proto",
2983 "//sql:test_support",
2987 if (enable_websockets) {
2988 deps += [ "//net/server:tests" ]
2992 sources += [ "base/sockaddr_util_posix_unittest.cc" ]
2995 if (is_android || is_chromeos_ash) {
2996 sources += [ "base/network_change_notifier_passive_unittest.cc" ]
2999 if (enable_reporting) {
3001 "network_error_logging/mock_persistent_nel_store_unittest.cc",
3002 "network_error_logging/network_error_logging_service_unittest.cc",
3003 "reporting/mock_persistent_reporting_store_unittest.cc",
3004 "reporting/reporting_browsing_data_remover_unittest.cc",
3005 "reporting/reporting_cache_unittest.cc",
3006 "reporting/reporting_delivery_agent_unittest.cc",
3007 "reporting/reporting_endpoint_manager_unittest.cc",
3008 "reporting/reporting_garbage_collector_unittest.cc",
3009 "reporting/reporting_header_parser_unittest.cc",
3010 "reporting/reporting_network_change_observer_unittest.cc",
3011 "reporting/reporting_service_unittest.cc",
3012 "reporting/reporting_uploader_unittest.cc",
3014 if (!is_cronet_build) {
3016 "extras/sqlite/sqlite_persistent_reporting_and_nel_store_unittest.cc",
3022 "data/cache_tests/",
3023 "data/certificate_policies_unittest/",
3024 "data/cert_issuer_source_aia_unittest/",
3025 "data/cert_issuer_source_static_unittest/",
3026 "data/crl_unittest/",
3027 "data/embedded_test_server/",
3028 "data/file_stream_unittest/",
3029 "data/filter_unittests/",
3031 "data/name_constraints_unittest/",
3032 "data/ocsp_unittest/",
3033 "data/pac_file_fetcher_unittest/",
3034 "data/path_builder_unittest/",
3035 "data/quic_http_response_cache_data/",
3036 "data/quic_http_response_cache_data_with_push/",
3039 "data/verify_certificate_chain_unittest/",
3040 "data/verify_name_match_unittest/",
3041 "data/verify_signed_data_unittest/",
3044 "third_party/nist-pkits/",
3045 "//testing/buildbot/filters:net_unittests_filters",
3048 if (is_linux || is_chromeos || is_mac || is_win || is_fuchsia) {
3049 deps += [ "//third_party/pywebsocket3/" ]
3050 data_deps += [ "//third_party/pywebsocket3/" ]
3052 "tools/testserver/",
3053 "//third_party/pywebsocket3/src/mod_pywebsocket/",
3057 if (is_linux || is_chromeos) {
3058 sources += [ "tools/quic/quic_simple_server_test.cc" ]
3062 sources += [ "base/mac/url_conversions_unittest.mm" ]
3066 frameworks = [ "Security.framework" ]
3071 "http/http_auth_handler_ntlm_portable_unittest.cc",
3072 "ntlm/ntlm_buffer_reader_unittest.cc",
3073 "ntlm/ntlm_buffer_writer_unittest.cc",
3074 "ntlm/ntlm_client_unittest.cc",
3075 "ntlm/ntlm_test_data.h",
3076 "ntlm/ntlm_unittest.cc",
3080 if (enable_python_utils) {
3081 sources += [ "test/python_utils_unittest.cc" ]
3085 use_test_server = true
3087 "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.net.interfaces:fuchsia.net.interfaces_hlcpp",
3088 "//third_party/fuchsia-sdk/sdk/pkg/fidl_cpp",
3091 "base/fuchsia/network_interface_cache_unittest.cc",
3092 "base/network_change_notifier_fuchsia_unittest.cc",
3094 additional_manifest_fragments =
3095 [ "//build/config/fuchsia/test/network.shard.test-cml" ]
3098 if (use_nss_certs) {
3100 "cert/internal/system_trust_store_nss_unittest.cc",
3101 "cert/internal/trust_store_nss_unittest.cc",
3102 "cert/nss_cert_database_unittest.cc",
3103 "cert/x509_util_nss_unittest.cc",
3107 "ssl/client_cert_store_nss_unittest.cc",
3108 "ssl/ssl_platform_key_nss_unittest.cc",
3111 configs += [ "//build/config/linux/nss" ]
3114 if (use_external_gssapi) {
3116 "http/http_auth_gssapi_posix_unittest.cc",
3117 "http/mock_gssapi_library_posix.cc",
3118 "http/mock_gssapi_library_posix.h",
3127 sources += [ "http/http_auth_handler_negotiate_unittest.cc" ]
3130 if (enable_websockets) {
3132 "websockets/websocket_basic_handshake_stream_test.cc",
3133 "websockets/websocket_basic_stream_adapters_test.cc",
3134 "websockets/websocket_basic_stream_test.cc",
3135 "websockets/websocket_channel_test.cc",
3136 "websockets/websocket_deflate_parameters_test.cc",
3137 "websockets/websocket_deflate_predictor_impl_test.cc",
3138 "websockets/websocket_deflate_stream_test.cc",
3139 "websockets/websocket_deflater_test.cc",
3140 "websockets/websocket_errors_test.cc",
3141 "websockets/websocket_extension_parser_test.cc",
3142 "websockets/websocket_extension_test.cc",
3143 "websockets/websocket_frame_parser_test.cc",
3144 "websockets/websocket_frame_test.cc",
3145 "websockets/websocket_handshake_challenge_test.cc",
3146 "websockets/websocket_handshake_stream_create_helper_test.cc",
3147 "websockets/websocket_inflater_test.cc",
3148 "websockets/websocket_stream_cookie_test.cc",
3149 "websockets/websocket_stream_create_test_base.cc",
3150 "websockets/websocket_stream_create_test_base.h",
3151 "websockets/websocket_stream_test.cc",
3152 "websockets/websocket_test_util.cc",
3153 "websockets/websocket_test_util.h",
3157 # TODO(crbug.com/1281277): iOS does not have support for the spawned test
3158 # server, which is used by this test. The long term plan is to add
3159 # websocket support to the embedded test server and when that happens,
3160 # this test could be enabled.
3161 sources += [ "websockets/websocket_end_to_end_test.cc" ]
3165 if (!disable_file_support) {
3167 "base/directory_lister_unittest.cc",
3168 "base/directory_listing_unittest.cc",
3169 "test/url_request/url_request_test_job_backed_by_file_unittest.cc",
3173 if (enable_built_in_dns) {
3174 sources += [ "url_request/http_with_dns_over_https_unittest.cc" ]
3179 ":net_test_bundle_data",
3180 "//net/third_party/nist-pkits:test_bundle_data",
3184 if (enable_unix_sockets) {
3186 "socket/unix_domain_client_socket_posix_unittest.cc",
3187 "socket/unix_domain_server_socket_posix_unittest.cc",
3191 # Use getifaddrs() on POSIX platforms, except Linux.
3192 if (is_posix && !is_linux && !is_chromeos) {
3193 sources += [ "base/network_interfaces_getifaddrs_unittest.cc" ]
3196 # Unit tests that aren't supported by the current ICU alternatives on Android.
3197 if (is_android && use_platform_icu_alternatives) {
3199 "base/filename_util_unittest.cc",
3200 "base/url_util_unittest.cc",
3201 "cert/x509_certificate_unittest.cc",
3202 "url_request/url_request_job_unittest.cc",
3204 deps += [ "//url:url_java" ]
3207 # Unit tests that are not supported by the current ICU alternatives on iOS.
3208 if (is_ios && use_platform_icu_alternatives) {
3210 "base/filename_util_unittest.cc",
3211 "base/url_util_unittest.cc",
3212 "cert/x509_certificate_unittest.cc",
3213 "http/http_auth_handler_basic_unittest.cc",
3214 "http/http_auth_handler_digest_unittest.cc",
3215 "http/http_auth_handler_factory_unittest.cc",
3216 "http/http_auth_unittest.cc",
3217 "http/http_content_disposition_unittest.cc",
3218 "http/http_network_transaction_unittest.cc",
3219 "spdy/spdy_network_transaction_unittest.cc",
3220 "spdy/spdy_proxy_client_socket_unittest.cc",
3221 "url_request/url_request_job_unittest.cc",
3222 "url_request/url_request_unittest.cc",
3226 if (!disable_brotli_filter) {
3227 sources += [ "filter/brotli_source_stream_unittest.cc" ]
3230 if (!disable_zstd_filter) {
3231 sources += [ "filter/zstd_source_stream_unittest.cc" ]
3235 data_deps += [ "//net/tools/testserver:testserver_py" ]
3238 "//base:base_java_unittest_support",
3239 "//net/android:net_java",
3240 "//net/android:net_java_test_support",
3241 "//net/android:net_test_support_jni",
3242 "//net/android:net_test_support_provider_java",
3243 "//net/android:net_test_support_provider_jni",
3244 "//net/android:net_tests_java",
3245 "//net/android:net_tests_jni",
3246 "//net/android:net_unittests_apk_resources",
3248 # TODO(mmenke): This depends on test_support_base, which depends on
3249 # icu. Figure out a way to remove that dependency.
3250 "//testing/android/native_test:native_test_native_code",
3252 android_manifest = "//net/android/unittest_support/AndroidManifest.xml"
3255 "base/address_tracker_linux_unittest.cc",
3256 "base/network_interfaces_linux_unittest.cc",
3268 if (chrome_root_store_supported) {
3269 sources += [ "cert/internal/trust_store_chrome_unittest.cc" ]
3270 deps += [ "//net/data/ssl/chrome_root_store:gen_root_store_test_inc" ]
3273 sources += [ "cert/internal/trust_store_win_unittest.cc" ]
3274 sources += [ "cert/internal/path_builder_trust_store_win_unittest.cc" ]
3275 libs += [ "crypt32.lib" ]
3279 # Include transport_security_state_generator tests.
3280 if (host_toolchain == current_toolchain) {
3282 "//net/tools/huffman_trie:huffman_trie_generator_test_sources",
3283 "//net/tools/transport_security_state_generator:transport_security_state_generator_test_sources",
3288 # !is_android && !is_win && !is_mac
3290 # TODO(crbug.com/594965): this should be converted to "app" template and
3291 # enabled on iOS too.
3292 test("net_perftests") {
3294 "base/mime_sniffer_perftest.cc",
3295 "cookies/cookie_monster_perftest.cc",
3296 "disk_cache/disk_cache_perftest.cc",
3297 "extras/sqlite/sqlite_persistent_cookie_store_perftest.cc",
3298 "socket/udp_socket_perftest.cc",
3299 "spdy/spdy_http_utils_perftest.cc",
3300 "url_request/url_request_quic_perftest.cc",
3307 ":simple_quic_tools",
3311 "//base/test:test_support_perf",
3314 "//third_party/google_benchmark:google_benchmark",
3318 # Needed for isolate script to execute.
3319 "//testing:run_perf_test",
3321 if (enable_websockets) {
3322 sources += [ "websockets/websocket_frame_perftest.cc" ]
3325 deps += [ "//build/win:default_exe_manifest" ]
3332 # This has a global (InitGlobals) that must always be linked in, so
3333 # must be a source set instead of a static library.
3334 if (use_fuzzing_engine) {
3335 # fuzzer_test targets are no-op when |use_fuzzing_engine| is false. Fuzzer
3336 # support targets should be disabled too.
3337 source_set("net_fuzzer_test_support") {
3341 "base/fuzzer_test_support.cc",
3342 "filter/fuzzed_source_stream.cc",
3343 "filter/fuzzed_source_stream.h",
3344 "socket/fuzzed_datagram_client_socket.cc",
3345 "socket/fuzzed_datagram_client_socket.h",
3346 "socket/fuzzed_server_socket.cc",
3347 "socket/fuzzed_server_socket.h",
3348 "socket/fuzzed_socket.cc",
3349 "socket/fuzzed_socket.h",
3350 "socket/fuzzed_socket_factory.cc",
3351 "socket/fuzzed_socket_factory.h",
3354 "//base/test:test_support",
3355 "//net/dns:fuzzer_test_support",
3364 "data/fuzzer_dictionaries",
3366 allow_circular_includes_from = [ "//net/dns:fuzzer_test_support" ]
3370 fuzzer_test("net_der_parser_fuzzer") {
3371 sources = [ "der/parser_fuzzer.cc" ]
3374 "//third_party/abseil-cpp:absl",
3378 fuzzer_test("host_port_pair_fuzzer") {
3379 sources = [ "base/host_port_pair_fuzzer.cc" ]
3383 proto_library("disk_cache_lpm_fuzzer_proto") {
3384 sources = [ "disk_cache/disk_cache_fuzzer.proto" ]
3387 fuzzer_test("disk_cache_lpm_fuzzer") {
3388 sources = [ "disk_cache/disk_cache_fuzzer.cc" ]
3390 ":disk_cache_lpm_fuzzer_proto",
3394 "//third_party/libprotobuf-mutator",
3398 proto_library("backoff_entry_serializer_fuzzer_input") {
3400 sources = [ "base/backoff_entry_serializer_fuzzer_input.proto" ]
3401 link_deps = [ "//testing/libfuzzer/proto:json_proto" ]
3404 fuzzer_test("net_backoff_entry_serializer_fuzzer") {
3405 sources = [ "base/backoff_entry_serializer_fuzzer.cc" ]
3407 ":backoff_entry_serializer_fuzzer_input",
3408 ":net_fuzzer_test_support",
3412 "//testing/libfuzzer/proto:json_proto",
3413 "//testing/libfuzzer/proto:json_proto_converter",
3414 "//third_party/libprotobuf-mutator",
3418 fuzzer_test("net_data_url_fuzzer") {
3419 sources = [ "base/data_url_fuzzer.cc" ]
3421 ":net_fuzzer_test_support",
3426 dict = "data/fuzzer_dictionaries/net_data_url_fuzzer.dict"
3428 # IsTokenChar() and ToLowerASCII() are surprisingly slow in instrumented builds.
3429 libfuzzer_options = [ "max_len=100000" ]
3432 fuzzer_test("net_mime_sniffer_fuzzer") {
3433 sources = [ "base/mime_sniffer_fuzzer.cc" ]
3435 ":net_fuzzer_test_support",
3439 dict = "data/fuzzer_dictionaries/net_mime_sniffer_fuzzer.dict"
3442 fuzzer_test("net_parse_proxy_list_pac_fuzzer") {
3443 sources = [ "proxy_resolution/parse_proxy_list_pac_fuzzer.cc" ]
3445 ":net_fuzzer_test_support",
3450 fuzzer_test("net_parse_proxy_list_fuzzer") {
3451 sources = [ "proxy_resolution/parse_proxy_list_fuzzer.cc" ]
3453 ":net_fuzzer_test_support",
3458 fuzzer_test("net_parse_proxy_bypass_rules_fuzzer") {
3459 sources = [ "proxy_resolution/parse_proxy_bypass_rules_fuzzer.cc" ]
3461 libfuzzer_options = [
3462 # The proxy bypass rules aren't very complicated, so this is more than
3463 # enough to explore the grammar. Allowing the length to become too large
3464 # can result in test timeouts (https://crbug.com/813619).
3469 ":net_fuzzer_test_support",
3474 fuzzer_test("net_parse_proxy_rules_fuzzer") {
3475 sources = [ "proxy_resolution/parse_proxy_rules_fuzzer.cc" ]
3477 ":net_fuzzer_test_support",
3480 dict = "data/fuzzer_dictionaries/net_parse_proxy_bypass_rules_fuzzer.dict"
3483 fuzzer_test("net_get_domain_and_registry_fuzzer") {
3485 [ "base/registry_controlled_domains/get_domain_and_registry_fuzzer.cc" ]
3487 ":net_fuzzer_test_support",
3491 dict = "data/fuzzer_dictionaries/net_get_domain_and_registry_fuzzer.dict"
3494 fuzzer_test("net_lookup_string_in_fixed_set_fuzzer") {
3495 sources = [ "base/lookup_string_in_fixed_set_fuzzer.cc" ]
3497 ":net_fuzzer_test_support",
3500 "//net/base/registry_controlled_domains:lookup_strings_test_sets",
3502 dict = "data/fuzzer_dictionaries/net_get_domain_and_registry_fuzzer.dict"
3505 fuzzer_test("net_base_schemeful_site_fuzzer") {
3506 sources = [ "base/schemeful_site_fuzzer.cc" ]
3508 ":net_fuzzer_test_support",
3511 "//testing/libfuzzer/proto:url_proto",
3512 "//testing/libfuzzer/proto:url_proto_converter",
3513 "//third_party/libprotobuf-mutator",
3517 fuzzer_test("net_cert_ct_decode_signed_certificate_timestamp_fuzzer") {
3518 sources = [ "cert/decode_signed_certificate_timestamp_fuzzer.cc" ]
3520 ":net_fuzzer_test_support",
3526 fuzzer_test("net_cert_verify_name_match_fuzzer") {
3527 sources = [ "cert/pki/verify_name_match_fuzzer.cc" ]
3529 ":net_fuzzer_test_support",
3535 fuzzer_test("net_cert_normalize_name_fuzzer") {
3536 sources = [ "cert/pki/verify_name_match_normalizename_fuzzer.cc" ]
3543 fuzzer_test("net_cert_verify_name_in_subtree_fuzzer") {
3544 sources = [ "cert/pki/verify_name_match_verifynameinsubtree_fuzzer.cc" ]
3546 ":net_fuzzer_test_support",
3552 fuzzer_test("net_cert_crl_parse_crl_certificatelist_fuzzer") {
3553 sources = [ "cert/pki/crl_parse_crl_certificatelist_fuzzer.cc" ]
3554 seed_corpus = "data/fuzzer_data/crl_parse_crl_certificatelist_fuzzer"
3561 fuzzer_test("net_cert_crl_parse_crl_tbscertlist_fuzzer") {
3562 sources = [ "cert/pki/crl_parse_crl_tbscertlist_fuzzer.cc" ]
3563 seed_corpus = "data/fuzzer_data/crl_parse_crl_tbscertlist_fuzzer"
3570 fuzzer_test("net_cert_crl_parse_issuing_distribution_point_fuzzer") {
3571 sources = [ "cert/pki/crl_parse_issuing_distribution_point_fuzzer.cc" ]
3572 seed_corpus = "data/fuzzer_data/crl_parse_issuing_distribution_point_fuzzer"
3579 fuzzer_test("net_cert_crl_getcrlstatusforcert_fuzzer") {
3580 sources = [ "cert/pki/crl_getcrlstatusforcert_fuzzer.cc" ]
3581 seed_corpus = "data/fuzzer_data/crl_getcrlstatusforcert_fuzzer"
3588 fuzzer_test("net_cert_ocsp_parse_ocsp_cert_id_fuzzer") {
3589 sources = [ "cert/pki/ocsp_parse_ocsp_cert_id_fuzzer.cc" ]
3590 seed_corpus = "data/fuzzer_data/parse_ocsp_cert_id_fuzzer"
3597 fuzzer_test("net_cert_ocsp_parse_ocsp_single_response_fuzzer") {
3598 sources = [ "cert/pki/ocsp_parse_ocsp_single_response_fuzzer.cc" ]
3599 seed_corpus = "data/fuzzer_data/parse_ocsp_single_response_fuzzer"
3606 fuzzer_test("net_cert_ocsp_parse_ocsp_response_data_fuzzer") {
3607 sources = [ "cert/pki/ocsp_parse_ocsp_response_data_fuzzer.cc" ]
3608 seed_corpus = "data/fuzzer_data/parse_ocsp_response_data_fuzzer"
3615 fuzzer_test("net_cert_ocsp_parse_ocsp_response_fuzzer") {
3616 sources = [ "cert/pki/ocsp_parse_ocsp_response_fuzzer.cc" ]
3617 seed_corpus = "data/fuzzer_data/parse_ocsp_response_fuzzer"
3624 fuzzer_test("net_cert_parse_authority_key_identifier_fuzzer") {
3625 sources = [ "cert/pki/parse_authority_key_identifier_fuzzer.cc" ]
3626 seed_corpus = "data/fuzzer_data/parse_authority_key_identifier_fuzzer"
3633 fuzzer_test("net_cert_parse_certificate_fuzzer") {
3634 sources = [ "cert/pki/parse_certificate_fuzzer.cc" ]
3641 fuzzer_test("net_cert_parse_crldp_fuzzer") {
3642 sources = [ "cert/pki/parse_crldp_fuzzer.cc" ]
3643 seed_corpus = "data/fuzzer_data/parse_crldp_fuzzer"
3650 fuzzer_test("net_canonical_cookie_fuzzer") {
3651 sources = [ "cookies/canonical_cookie_fuzzer.cc" ]
3653 ":net_fuzzer_test_support",
3656 dict = "data/fuzzer_dictionaries/net_cookies_fuzzer.dict"
3657 seed_corpus = "data/fuzzer_data/cookies/"
3660 fuzzer_test("net_cookie_partition_key_fuzzer") {
3661 sources = [ "cookies/cookie_partition_key_fuzzer.cc" ]
3663 ":net_fuzzer_test_support",
3668 fuzzer_test("net_cookie_util_parsing_fuzzer") {
3669 sources = [ "cookies/cookie_util_parsing_fuzzer.cc" ]
3671 ":net_fuzzer_test_support",
3674 dict = "data/fuzzer_dictionaries/net_cookies_fuzzer.dict"
3675 libfuzzer_options = [ "max_len=8192" ]
3676 seed_corpus = "data/fuzzer_data/cookies/"
3679 fuzzer_test("net_parse_cookie_line_fuzzer") {
3680 sources = [ "cookies/parse_cookie_line_fuzzer.cc" ]
3682 ":net_fuzzer_test_support",
3685 dict = "data/fuzzer_dictionaries/net_cookies_fuzzer.dict"
3686 seed_corpus = "data/fuzzer_data/cookies/"
3689 fuzzer_test("net_http_stream_parser_fuzzer") {
3690 sources = [ "http/http_stream_parser_fuzzer.cc" ]
3692 ":net_fuzzer_test_support",
3697 dict = "data/fuzzer_dictionaries/net_http_stream_parser_fuzzer.dict"
3701 fuzzer_test("net_ntlm_ntlm_client_fuzzer") {
3703 "ntlm/ntlm_client_fuzzer.cc",
3704 "ntlm/ntlm_test_data.h",
3707 ":net_fuzzer_test_support",
3712 dict = "data/fuzzer_dictionaries/net_ntlm_ntlm_client_fuzzer.dict"
3713 seed_corpus = "data/fuzzer_data/ntlm_client_fuzzer/"
3717 if (!disable_brotli_filter) {
3718 fuzzer_test("net_brotli_source_stream_fuzzer") {
3719 sources = [ "filter/brotli_source_stream_fuzzer.cc" ]
3721 ":net_fuzzer_test_support",
3729 if (!disable_zstd_filter) {
3730 fuzzer_test("net_zstd_source_stream_fuzzer") {
3731 sources = [ "filter/zstd_source_stream_fuzzer.cc" ]
3733 ":net_fuzzer_test_support",
3741 fuzzer_test("net_gzip_source_stream_fuzzer") {
3742 sources = [ "filter/gzip_source_stream_fuzzer.cc" ]
3744 ":net_fuzzer_test_support",
3751 fuzzer_test("net_crl_set_fuzzer") {
3752 sources = [ "cert/crl_set_fuzzer.cc" ]
3754 ":net_fuzzer_test_support",
3759 seed_corpus = "data/fuzzer_data/net_crl_set_fuzzer/"
3762 fuzzer_test("net_spdy_headers_to_http_response_headers_fuzzer") {
3763 sources = [ "spdy/spdy_headers_to_http_response_headers_fuzzer.cc" ]
3765 ":net_fuzzer_test_support",
3769 dict = "data/fuzzer_dictionaries/net_http_stream_parser_fuzzer.dict"
3770 libfuzzer_options = [ "max_len = 512" ]
3773 fuzzer_test("net_unescape_url_component_fuzzer") {
3774 sources = [ "base/unescape_url_component_fuzzer.cc" ]
3776 ":net_fuzzer_test_support",
3780 dict = "data/fuzzer_dictionaries/unescape_url_component_fuzzer.dict"
3781 libfuzzer_options = [ "max_len = 2048" ]
3784 fuzzer_test("net_websocket_deflate_stream_fuzzer") {
3785 sources = [ "websockets/websocket_deflate_stream_fuzzer.cc" ]
3787 ":net_fuzzer_test_support",
3790 dict = "data/fuzzer_dictionaries/net_websocket_frame_parser_fuzzer.dict"
3791 libfuzzer_options = [ "max_len=512" ]
3794 fuzzer_test("net_websocket_extension_parser_fuzzer") {
3795 sources = [ "websockets/websocket_extension_parser_fuzzer.cc" ]
3797 ":net_fuzzer_test_support",
3800 dict = "data/fuzzer_dictionaries/net_websocket_extension_parser_fuzzer.dict"
3801 libfuzzer_options = [ "max_len = 256" ]
3804 fuzzer_test("net_websocket_frame_parser_fuzzer") {
3805 sources = [ "websockets/websocket_frame_parser_fuzzer.cc" ]
3807 ":net_fuzzer_test_support",
3810 dict = "data/fuzzer_dictionaries/net_websocket_frame_parser_fuzzer.dict"
3811 libfuzzer_options = [ "max_len=256" ]
3814 if (use_fuzzing_engine) {
3815 # This is a separate target because //net/server:http_server
3816 # wants to limit its visibility to a select number of target, but the
3817 # "fuzzer_test" template expands on iOS to many targets that need to
3818 # have the "deps" information propagated in order to support "fat"
3820 source_set("net_web_socket_encoder_fuzzer_deps") {
3823 ":net_web_socket_encoder_fuzzer",
3824 ":net_web_socket_encoder_fuzzer_executable",
3825 ":run_net_web_socket_encoder_fuzzer",
3828 ":net_fuzzer_test_support",
3830 "//net/server:http_server",
3834 fuzzer_test("net_web_socket_encoder_fuzzer") {
3835 sources = [ "server/web_socket_encoder_fuzzer.cc" ]
3836 deps = [ ":net_web_socket_encoder_fuzzer_deps" ]
3837 libfuzzer_options = [ "max_len=256" ]
3841 fuzzer_test("net_http_chunked_decoder_fuzzer") {
3842 sources = [ "http/http_chunked_decoder_fuzzer.cc" ]
3844 ":net_fuzzer_test_support",
3847 dict = "data/fuzzer_dictionaries/http_chunked_decoder_fuzzer.dict"
3850 fuzzer_test("net_http_auth_handler_basic_fuzzer") {
3851 sources = [ "http/http_auth_handler_basic_fuzzer.cc" ]
3852 dict = "data/fuzzer_dictionaries/net_http_auth_handler_basic_fuzzer.dict"
3854 ":net_fuzzer_test_support",
3860 fuzzer_test("net_http_auth_handler_digest_fuzzer") {
3861 sources = [ "http/http_auth_handler_digest_fuzzer.cc" ]
3862 dict = "data/fuzzer_dictionaries/net_http_auth_handler_digest_fuzzer.dict"
3864 ":net_fuzzer_test_support",
3870 fuzzer_test("net_http_auth_handler_fuzzer") {
3871 sources = [ "http/http_auth_handler_fuzzer.cc" ]
3873 ":net_fuzzer_test_support",
3880 fuzzer_test("net_http_content_disposition_fuzzer") {
3881 sources = [ "http/http_content_disposition_fuzzer.cc" ]
3882 dict = "data/fuzzer_dictionaries/net_http_content_disposition_fuzzer.dict"
3884 ":net_fuzzer_test_support",
3889 fuzzer_test("net_http_proxy_client_socket_fuzzer") {
3890 sources = [ "http/http_proxy_client_socket_fuzzer.cc" ]
3892 ":net_fuzzer_test_support",
3897 dict = "data/fuzzer_dictionaries/net_http_proxy_client_socket_fuzzer.dict"
3900 fuzzer_test("net_structured_headers_fuzzer") {
3901 sources = [ "http/structured_headers_fuzzer.cc" ]
3903 ":net_fuzzer_test_support",
3908 seed_corpus = "data/fuzzer_data/structured_headers_corpus"
3911 fuzzer_test("net_parse_url_hostname_to_address_fuzzer") {
3912 sources = [ "base/parse_url_hostname_to_address_fuzzer.cc" ]
3914 ":net_fuzzer_test_support",
3918 libfuzzer_options = [ "max_len=512" ]
3919 seed_corpus = "data/fuzzer_data/hostnames/"
3922 fuzzer_test("net_quic_crypto_framer_parse_message_fuzzer") {
3923 sources = [ "quic/quic_crypto_framer_parse_message_fuzzer.cc" ]
3925 ":net_fuzzer_test_support",
3931 fuzzer_test("net_quic_transport_parameters_fuzzer") {
3932 sources = [ "quic/quic_transport_parameters_fuzzer.cc" ]
3934 ":net_fuzzer_test_support",
3940 fuzzer_test("net_socks_client_socket_fuzzer") {
3941 sources = [ "socket/socks_client_socket_fuzzer.cc" ]
3943 ":net_fuzzer_test_support",
3950 fuzzer_test("net_socks5_client_socket_fuzzer") {
3951 sources = [ "socket/socks5_client_socket_fuzzer.cc" ]
3953 ":net_fuzzer_test_support",
3960 fuzzer_test("net_url_request_fuzzer") {
3961 sources = [ "url_request/url_request_fuzzer.cc" ]
3963 ":net_fuzzer_test_support",
3968 dict = "data/fuzzer_dictionaries/net_url_request_fuzzer.dict"
3971 fuzzer_test("net_auth_challenge_tokenizer_fuzzer") {
3972 sources = [ "http/http_auth_challenge_tokenizer_fuzzer.cc" ]
3974 ":net_fuzzer_test_support",
3981 fuzzer_test("net_http_security_headers_hsts_fuzzer") {
3982 sources = [ "http/http_security_headers_hsts_fuzzer.cc" ]
3987 dict = "data/fuzzer_dictionaries/net_http_security_headers_fuzzer.dict"
3988 seed_corpus = "data/fuzzer_data/http_security_headers/"
3991 fuzzer_test("net_http_transport_security_state_static_fuzzer") {
3992 sources = [ "http/transport_security_state_static_fuzzer.cc" ]
3994 ":net_fuzzer_test_support",
3998 "data/fuzzer_dictionaries/net_http_transport_security_state_fuzzer.dict"
4001 fuzzer_test("net_spdy_session_fuzzer") {
4002 sources = [ "spdy/spdy_session_fuzzer.cc" ]
4004 ":net_fuzzer_test_support",
4008 "//net/data/ssl/certificates:generate_fuzzer_cert_includes",
4010 dict = "data/fuzzer_dictionaries/net_spdy_session_fuzzer.dict"
4011 seed_corpus = "data/fuzzer_data/net_spdy_session_fuzzer/"
4014 fuzzer_test("net_http2_frame_decoder_fuzzer") {
4015 sources = [ "spdy/fuzzing/http2_frame_decoder_fuzzer.cc" ]
4017 ":net_fuzzer_test_support",
4024 fuzzer_test("net_hpack_decoder_fuzzer") {
4025 sources = [ "spdy/fuzzing/hpack_decoder_fuzzer.cc" ]
4027 ":net_fuzzer_test_support",
4034 proto_library("reporting_policy_proto") {
4036 sources = [ "reporting/reporting_policy.proto" ]
4037 link_deps = [ "//testing/libfuzzer/proto:json_proto" ]
4040 fuzzer_test("net_reporting_header_parser_fuzzer") {
4041 sources = [ "reporting/reporting_header_parser_fuzzer.cc" ]
4044 ":net_fuzzer_test_support",
4045 ":reporting_policy_proto",
4049 "//testing/libfuzzer/proto:json_proto",
4050 "//testing/libfuzzer/proto:json_proto_converter",
4051 "//third_party/libprotobuf-mutator",
4055 fuzzer_test("net_quic_stream_factory_fuzzer") {
4056 sources = [ "quic/quic_stream_factory_fuzzer.cc" ]
4059 ":net_fuzzer_test_support",
4063 "//net/data/ssl/certificates:generate_fuzzer_cert_includes",
4067 fuzzer_test("net_uri_template_fuzzer") {
4068 sources = [ "third_party/uri_template/uri_template_fuzzer.cc" ]
4070 ":net_fuzzer_test_support",
4074 dict = "data/fuzzer_dictionaries/net_uri_template_fuzzer.dict"
4077 if (is_linux || is_chromeos) {
4078 fuzzer_test("net_base_address_tracker_linux_fuzzer") {
4079 sources = [ "base/address_tracker_linux_fuzzer.cc" ]
4081 ":net_fuzzer_test_support",