blob: d214ac4959ff76dd8e95d327c9839ee967d14444 [file] [log] [blame]
# Copyright (c) 2013 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/buildflag_header.gni")
import("//build/config/chromecast_build.gni")
import("//build/config/chromeos/ui_mode.gni")
import("//build/config/compiler/compiler.gni")
import("//build/config/crypto.gni")
import("//build/config/features.gni")
import("//net/features.gni")
import("//testing/libfuzzer/fuzzer_test.gni")
import("//testing/test.gni")
import("//third_party/icu/config.gni")
import("//third_party/protobuf/proto_library.gni")
import("//tools/grit/grit_rule.gni")
import("//url/features.gni")
if (is_android) {
import("//build/config/android/config.gni")
import("//build/config/android/rules.gni")
} else if (is_mac) {
import("//build/config/mac/mac_sdk.gni")
}
# The way the cache uses mmap() is inefficient on some Android devices. If
# this flag is set, we hackily avoid using mmap() in the disk cache. We are
# pretty confident that mmap-ing the index would not hurt any existing x86
# android devices, but we cannot be so sure about the variety of ARM devices.
# So enable it for x86 only for now.
posix_avoid_mmap = is_android && current_cpu != "x86"
enable_built_in_dns = !is_ios
# Unix sockets are not supported on iOS or NaCl.
enable_unix_sockets = is_posix && !is_ios && !is_nacl
# x86/x64 cast_shell builds run on regular trybots and can use python runtime
# and remote test server. ARM cast_shell builds don't have python runtime.
is_arm_cast_shell_build =
is_chromecast && (current_cpu == "arm" || current_cpu == "arm64")
# Python works only on Linux, MacOS and Windows so exclude the others,
# chromecast, android, fuchsia, ios.
enable_python_utils =
!is_arm_cast_shell_build && !is_android && !is_fuchsia && !is_ios
# Platforms that cannot use python_utils (like Android but see full
# list above) will instead use a remote server, except for iOS which
# won't get either.
use_remote_test_server = !enable_python_utils && !is_ios
# Whether //net should use an external GSSAPI library for implementing HTTP
# Negotiate authentication. All platforms for which use_kerberos is true should
# have some external implementation since //net doesn't have intrinsic support
# for Kerberos. This implementation is an external GSSAPI library on all
# platforms except on:
#
# Windows : Uses SSPI for Negotiate authentication.
#
# Android : Uses an external authenticator. See
# https://www.chromium.org/developers/design-documents/http-authentication/writing-a-spnego-authenticator-for-chrome-on-android
use_external_gssapi = use_kerberos && !is_android && !is_win
config("net_test_config") {
if (use_remote_test_server) {
defines = [ "USE_REMOTE_TEST_SERVER" ]
}
}
buildflag_header("buildflags") {
header = "net_buildflags.h"
flags = [
"POSIX_AVOID_MMAP=$posix_avoid_mmap",
"DISABLE_FILE_SUPPORT=$disable_file_support",
"DISABLE_FTP_SUPPORT=$disable_ftp_support",
"ENABLE_MDNS=$enable_mdns",
"ENABLE_REPORTING=$enable_reporting",
"ENABLE_WEBSOCKETS=$enable_websockets",
"INCLUDE_TRANSPORT_SECURITY_STATE_PRELOAD_LIST=$include_transport_security_state_preload_list",
"USE_KERBEROS=$use_kerberos",
"USE_EXTERNAL_GSSAPI=$use_external_gssapi",
"TRIAL_COMPARISON_CERT_VERIFIER_SUPPORTED=$trial_comparison_cert_verifier_supported",
"BUILTIN_CERT_VERIFIER_FEATURE_SUPPORTED=$builtin_cert_verifier_feature_supported",
]
}
config("net_internal_config") {
defines = [ "NET_IMPLEMENTATION" ]
if (enable_built_in_dns) {
defines += [ "ENABLE_BUILT_IN_DNS" ]
}
}
net_configs = [
":net_internal_config",
"//build/config:precompiled_headers",
"//build/config/compiler:wexit_time_destructors",
]
if (is_linux || is_chromeos) {
net_configs += [ "//build/config/linux:libresolv" ]
}
source_set("constants") {
sources = [ "base/trace_constants.h" ]
deps = [ "//base" ]
}
component("net") {
sources = [
"base/address_family.cc",
"base/address_family.h",
"base/address_list.cc",
"base/address_list.h",
"base/auth.cc",
"base/auth.h",
"base/completion_once_callback.h",
"base/completion_repeating_callback.h",
"base/datagram_buffer.cc",
"base/datagram_buffer.h",
"base/escape.cc",
"base/escape.h",
"base/features.cc",
"base/features.h",
"base/hash_value.cc",
"base/hash_value.h",
"base/host_port_pair.cc",
"base/host_port_pair.h",
"base/interval.h",
"base/io_buffer.cc",
"base/io_buffer.h",
"base/ip_address.cc",
"base/ip_address.h",
"base/ip_endpoint.cc",
"base/ip_endpoint.h",
"base/load_timing_info.cc",
"base/load_timing_info.h",
"base/lookup_string_in_fixed_set.cc",
"base/lookup_string_in_fixed_set.h",
"base/net_error_details.h",
"base/net_error_list.h",
"base/net_errors.cc",
"base/net_errors.h",
"base/net_module.cc",
"base/net_module.h",
"base/net_string_util.h",
"base/network_interfaces.cc",
"base/network_interfaces.h",
"base/parse_number.cc",
"base/parse_number.h",
"base/port_util.cc",
"base/port_util.h",
"base/privacy_mode.cc",
"base/privacy_mode.h",
"base/rand_callback.h",
"base/registry_controlled_domains/registry_controlled_domain.cc",
"base/registry_controlled_domains/registry_controlled_domain.h",
"base/schemeful_site.cc",
"base/schemeful_site.h",
"base/sockaddr_storage.cc",
"base/sockaddr_storage.h",
"base/sys_addrinfo.h",
"base/transport_info.cc",
"base/transport_info.h",
"base/url_util.cc",
"base/url_util.h",
"cert/asn1_util.cc",
"cert/asn1_util.h",
"cert/cert_and_ct_verifier.cc",
"cert/cert_and_ct_verifier.h",
"cert/cert_database.cc",
"cert/cert_database.h",
"cert/cert_status_flags.cc",
"cert/cert_status_flags.h",
"cert/cert_status_flags_list.h",
"cert/cert_verifier.cc",
"cert/cert_verifier.h",
"cert/cert_verify_result.cc",
"cert/cert_verify_result.h",
"cert/client_cert_verifier.h",
"cert/crl_set.cc",
"cert/crl_set.h",
"cert/ct_policy_enforcer.cc",
"cert/ct_policy_enforcer.h",
"cert/ct_policy_status.h",
"cert/ct_verifier.h",
"cert/do_nothing_ct_verifier.cc",
"cert/do_nothing_ct_verifier.h",
"cert/internal/cert_error_id.cc",
"cert/internal/cert_error_id.h",
"cert/internal/cert_error_params.cc",
"cert/internal/cert_error_params.h",
"cert/internal/cert_errors.cc",
"cert/internal/cert_errors.h",
"cert/internal/cert_issuer_source.h",
"cert/internal/cert_issuer_source_aia.cc",
"cert/internal/cert_issuer_source_aia.h",
"cert/internal/cert_issuer_source_static.cc",
"cert/internal/cert_issuer_source_static.h",
"cert/internal/certificate_policies.cc",
"cert/internal/certificate_policies.h",
"cert/internal/common_cert_errors.cc",
"cert/internal/common_cert_errors.h",
"cert/internal/crl.cc",
"cert/internal/crl.h",
"cert/internal/extended_key_usage.cc",
"cert/internal/extended_key_usage.h",
"cert/internal/general_names.cc",
"cert/internal/general_names.h",
"cert/internal/name_constraints.cc",
"cert/internal/name_constraints.h",
"cert/internal/ocsp.cc",
"cert/internal/ocsp.h",
"cert/internal/parse_certificate.cc",
"cert/internal/parse_certificate.h",
"cert/internal/parse_name.cc",
"cert/internal/parse_name.h",
"cert/internal/parsed_certificate.cc",
"cert/internal/parsed_certificate.h",
"cert/internal/path_builder.cc",
"cert/internal/path_builder.h",
"cert/internal/revocation_checker.cc",
"cert/internal/revocation_checker.h",
"cert/internal/revocation_util.cc",
"cert/internal/revocation_util.h",
"cert/internal/signature_algorithm.cc",
"cert/internal/signature_algorithm.h",
"cert/internal/simple_path_builder_delegate.cc",
"cert/internal/simple_path_builder_delegate.h",
"cert/internal/trust_store.cc",
"cert/internal/trust_store.h",
"cert/internal/trust_store_collection.cc",
"cert/internal/trust_store_collection.h",
"cert/internal/trust_store_in_memory.cc",
"cert/internal/trust_store_in_memory.h",
"cert/internal/verify_certificate_chain.cc",
"cert/internal/verify_certificate_chain.h",
"cert/internal/verify_name_match.cc",
"cert/internal/verify_name_match.h",
"cert/internal/verify_signed_data.cc",
"cert/internal/verify_signed_data.h",
"cert/ocsp_revocation_status.h",
"cert/ocsp_verify_result.cc",
"cert/ocsp_verify_result.h",
"cert/pem.cc",
"cert/pem.h",
"cert/sct_auditing_delegate.h",
"cert/sct_status_flags.cc",
"cert/sct_status_flags.h",
"cert/signed_certificate_timestamp.cc",
"cert/signed_certificate_timestamp.h",
"cert/signed_certificate_timestamp_and_status.cc",
"cert/signed_certificate_timestamp_and_status.h",
"cert/signed_tree_head.cc",
"cert/signed_tree_head.h",
"cert/symantec_certs.cc",
"cert/symantec_certs.h",
"cert/x509_cert_types.cc",
"cert/x509_cert_types.h",
"cert/x509_certificate.cc",
"cert/x509_certificate.h",
"cert/x509_certificate_net_log_param.cc",
"cert/x509_certificate_net_log_param.h",
"cert/x509_util.cc",
"cert/x509_util.h",
"der/encode_values.cc",
"der/encode_values.h",
"der/input.cc",
"der/input.h",
"der/parse_values.cc",
"der/parse_values.h",
"der/parser.cc",
"der/parser.h",
"der/tag.cc",
"der/tag.h",
"http/hsts_info.h",
"http/http_auth_challenge_tokenizer.cc",
"http/http_auth_challenge_tokenizer.h",
"http/http_auth_scheme.cc",
"http/http_auth_scheme.h",
"http/http_byte_range.cc",
"http/http_byte_range.h",
"http/http_log_util.cc",
"http/http_log_util.h",
"http/http_raw_request_headers.cc",
"http/http_raw_request_headers.h",
"http/http_request_headers.cc",
"http/http_request_headers.h",
"http/http_response_headers.cc",
"http/http_response_headers.h",
"http/http_response_info.cc",
"http/http_response_info.h",
"http/http_security_headers.cc",
"http/http_security_headers.h",
"http/http_status_code_list.h",
"http/http_util.cc",
"http/http_util.h",
"http/http_vary_data.cc",
"http/http_vary_data.h",
"http/structured_headers.cc",
"http/structured_headers.h",
"http/transport_security_state.h",
"http/transport_security_state_source.cc",
"http/transport_security_state_source.h",
"log/net_log.cc",
"log/net_log.h",
"log/net_log_capture_mode.cc",
"log/net_log_capture_mode.h",
"log/net_log_entry.cc",
"log/net_log_entry.h",
"log/net_log_event_type.h",
"log/net_log_event_type_list.h",
"log/net_log_source.cc",
"log/net_log_source.h",
"log/net_log_source_type.h",
"log/net_log_source_type_list.h",
"log/net_log_values.cc",
"log/net_log_values.h",
"log/net_log_with_source.cc",
"log/net_log_with_source.h",
"socket/client_socket_handle.cc",
"socket/client_socket_handle.h",
"socket/connect_job.cc",
"socket/connect_job.h",
"socket/connection_attempts.h",
"socket/next_proto.cc",
"socket/next_proto.h",
"socket/socket.cc",
"socket/socket.h",
"socket/socket_bio_adapter.cc",
"socket/socket_bio_adapter.h",
"socket/socket_performance_watcher.h",
"socket/socket_performance_watcher_factory.h",
"socket/ssl_client_socket.cc",
"socket/ssl_client_socket.h",
"socket/ssl_client_socket_impl.cc",
"socket/ssl_client_socket_impl.h",
"socket/ssl_socket.h",
"socket/stream_socket.cc",
"socket/stream_socket.h",
"ssl/cert_compression.cc",
"ssl/cert_compression.h",
"ssl/client_cert_identity.cc",
"ssl/client_cert_identity.h",
"ssl/openssl_ssl_util.cc",
"ssl/openssl_ssl_util.h",
"ssl/ssl_cert_request_info.cc",
"ssl/ssl_cert_request_info.h",
"ssl/ssl_cipher_suite_names.cc",
"ssl/ssl_cipher_suite_names.h",
"ssl/ssl_client_auth_cache.cc",
"ssl/ssl_client_auth_cache.h",
"ssl/ssl_client_cert_type.h",
"ssl/ssl_client_session_cache.cc",
"ssl/ssl_client_session_cache.h",
"ssl/ssl_config.cc",
"ssl/ssl_config.h",
"ssl/ssl_config_service.cc",
"ssl/ssl_config_service.h",
"ssl/ssl_connection_status_flags.h",
"ssl/ssl_handshake_details.h",
"ssl/ssl_info.cc",
"ssl/ssl_info.h",
"ssl/ssl_key_logger.cc",
"ssl/ssl_key_logger.h",
"ssl/ssl_legacy_crypto_fallback.h",
"ssl/ssl_private_key.cc",
"ssl/ssl_private_key.h",
"ssl/ssl_server_config.cc",
"ssl/ssl_server_config.h",
"third_party/uri_template/uri_template.cc",
"third_party/uri_template/uri_template.h",
]
if (is_posix || is_fuchsia) {
sources += [ "base/net_errors_posix.cc" ]
}
defines = []
if (disable_brotli_filter || is_nacl) {
defines += [ "NET_DISABLE_BROTLI" ]
}
deps = [
":net_deps",
"//build:chromeos_buildflags",
"//net/http:transport_security_state_generated_files",
]
public_deps = [
":net_export_header",
":net_public_deps",
"//net/dns",
"//net/dns:dns_client",
"//net/dns:host_resolver",
"//net/dns:host_resolver_manager",
"//net/dns:mdns_client",
"//net/dns/public",
"//net/third_party/quiche",
]
allow_circular_includes_from = [
"//net/dns",
"//net/dns:dns_client",
"//net/dns:host_resolver",
"//net/dns:host_resolver_manager",
"//net/dns:mdns_client",
"//net/dns/public",
"//net/http:transport_security_state_generated_files",
"//net/third_party/quiche",
]
if (is_nacl) {
sources += [ "base/network_interfaces_nacl.cc" ]
}
if (!is_nacl) {
sources += [
"base/backoff_entry.cc",
"base/backoff_entry.h",
"base/backoff_entry_serializer.cc",
"base/backoff_entry_serializer.h",
"base/cache_metrics.cc",
"base/cache_metrics.h",
"base/cache_type.h",
"base/chunked_upload_data_stream.cc",
"base/chunked_upload_data_stream.h",
"base/data_url.cc",
"base/data_url.h",
"base/elements_upload_data_stream.cc",
"base/elements_upload_data_stream.h",
"base/expiring_cache.h",
"base/file_stream.cc",
"base/file_stream.h",
"base/file_stream_context.cc",
"base/file_stream_context.h",
"base/filename_util.cc",
"base/filename_util.h",
"base/filename_util_internal.cc",
"base/filename_util_internal.h",
"base/hex_utils.cc",
"base/hex_utils.h",
"base/host_mapping_rules.cc",
"base/host_mapping_rules.h",
"base/http_user_agent_settings.h",
"base/idempotency.h",
"base/isolation_info.cc",
"base/isolation_info.h",
"base/load_flags.h",
"base/load_flags_list.h",
"base/load_states.h",
"base/load_states_list.h",
"base/logging_network_change_observer.cc",
"base/logging_network_change_observer.h",
"base/mime_sniffer.cc",
"base/mime_sniffer.h",
"base/mime_util.cc",
"base/mime_util.h",
"base/net_info_source_list.h",
"base/network_activity_monitor.cc",
"base/network_activity_monitor.h",
"base/network_change_notifier.cc",
"base/network_change_notifier.h",
"base/network_change_notifier_factory.h",
"base/network_delegate.cc",
"base/network_delegate.h",
"base/network_delegate_impl.cc",
"base/network_delegate_impl.h",
"base/network_isolation_key.cc",
"base/network_isolation_key.h",
"base/platform_mime_util.h",
"base/prioritized_dispatcher.cc",
"base/prioritized_dispatcher.h",
"base/prioritized_task_runner.cc",
"base/prioritized_task_runner.h",
"base/priority_queue.h",
"base/proxy_delegate.h",
"base/proxy_server.cc",
"base/proxy_server.h",
"base/request_priority.cc",
"base/request_priority.h",
"base/scheme_host_port_matcher.cc",
"base/scheme_host_port_matcher.h",
"base/scheme_host_port_matcher_result.h",
"base/scheme_host_port_matcher_rule.cc",
"base/scheme_host_port_matcher_rule.h",
"base/test_data_stream.cc",
"base/test_data_stream.h",
"base/upload_bytes_element_reader.cc",
"base/upload_bytes_element_reader.h",
"base/upload_data_stream.cc",
"base/upload_data_stream.h",
"base/upload_element_reader.cc",
"base/upload_element_reader.h",
"base/upload_file_element_reader.cc",
"base/upload_file_element_reader.h",
"base/upload_progress.h",
"cert/caching_cert_verifier.cc",
"cert/caching_cert_verifier.h",
"cert/cert_net_fetcher.h",
"cert/cert_verify_proc.cc",
"cert/cert_verify_proc.h",
"cert/cert_verify_proc_builtin.cc",
"cert/cert_verify_proc_builtin.h",
"cert/coalescing_cert_verifier.cc",
"cert/coalescing_cert_verifier.h",
"cert/ct_log_response_parser.cc",
"cert/ct_log_response_parser.h",
"cert/ct_log_verifier.cc",
"cert/ct_log_verifier.h",
"cert/ct_log_verifier_util.cc",
"cert/ct_log_verifier_util.h",
"cert/ct_objects_extractor.cc",
"cert/ct_objects_extractor.h",
"cert/ct_sct_to_string.cc",
"cert/ct_sct_to_string.h",
"cert/ct_serialization.cc",
"cert/ct_serialization.h",
"cert/ct_signed_certificate_timestamp_log_param.cc",
"cert/ct_signed_certificate_timestamp_log_param.h",
"cert/ev_root_ca_metadata.cc",
"cert/ev_root_ca_metadata.h",
"cert/internal/system_trust_store.cc",
"cert/internal/system_trust_store.h",
"cert/known_roots.cc",
"cert/known_roots.h",
"cert/merkle_audit_proof.cc",
"cert/merkle_audit_proof.h",
"cert/merkle_consistency_proof.cc",
"cert/merkle_consistency_proof.h",
"cert/merkle_tree_leaf.cc",
"cert/merkle_tree_leaf.h",
"cert/multi_log_ct_verifier.cc",
"cert/multi_log_ct_verifier.h",
"cert/multi_threaded_cert_verifier.cc",
"cert/multi_threaded_cert_verifier.h",
"cert/root_cert_list_generated.h",
"cert/test_root_certs.cc",
"cert/test_root_certs.h",
"cert_net/cert_net_fetcher_url_request.cc",
"cert_net/cert_net_fetcher_url_request.h",
"cookies/canonical_cookie.cc",
"cookies/canonical_cookie.h",
"cookies/cookie_access_delegate.cc",
"cookies/cookie_access_delegate.h",
"cookies/cookie_access_result.cc",
"cookies/cookie_access_result.h",
"cookies/cookie_change_dispatcher.cc",
"cookies/cookie_change_dispatcher.h",
"cookies/cookie_constants.cc",
"cookies/cookie_constants.h",
"cookies/cookie_deletion_info.cc",
"cookies/cookie_deletion_info.h",
"cookies/cookie_inclusion_status.cc",
"cookies/cookie_inclusion_status.h",
"cookies/cookie_monster.cc",
"cookies/cookie_monster.h",
"cookies/cookie_monster_change_dispatcher.cc",
"cookies/cookie_monster_change_dispatcher.h",
"cookies/cookie_monster_netlog_params.cc",
"cookies/cookie_monster_netlog_params.h",
"cookies/cookie_options.cc",
"cookies/cookie_options.h",
"cookies/cookie_store.cc",
"cookies/cookie_store.h",
"cookies/cookie_util.cc",
"cookies/cookie_util.h",
"cookies/parsed_cookie.cc",
"cookies/parsed_cookie.h",
"cookies/site_for_cookies.cc",
"cookies/site_for_cookies.h",
"cookies/static_cookie_policy.cc",
"cookies/static_cookie_policy.h",
"disk_cache/backend_cleanup_tracker.cc",
"disk_cache/backend_cleanup_tracker.h",
"disk_cache/blockfile/addr.cc",
"disk_cache/blockfile/addr.h",
"disk_cache/blockfile/backend_impl.cc",
"disk_cache/blockfile/backend_impl.h",
"disk_cache/blockfile/bitmap.cc",
"disk_cache/blockfile/bitmap.h",
"disk_cache/blockfile/block_files.cc",
"disk_cache/blockfile/block_files.h",
"disk_cache/blockfile/disk_format.cc",
"disk_cache/blockfile/disk_format.h",
"disk_cache/blockfile/disk_format_base.h",
"disk_cache/blockfile/entry_impl.cc",
"disk_cache/blockfile/entry_impl.h",
"disk_cache/blockfile/errors.h",
"disk_cache/blockfile/eviction.cc",
"disk_cache/blockfile/eviction.h",
"disk_cache/blockfile/experiments.h",
"disk_cache/blockfile/file.cc",
"disk_cache/blockfile/file.h",
"disk_cache/blockfile/file_block.h",
"disk_cache/blockfile/file_lock.cc",
"disk_cache/blockfile/file_lock.h",
"disk_cache/blockfile/histogram_macros.h",
"disk_cache/blockfile/in_flight_backend_io.cc",
"disk_cache/blockfile/in_flight_backend_io.h",
"disk_cache/blockfile/in_flight_io.cc",
"disk_cache/blockfile/in_flight_io.h",
"disk_cache/blockfile/mapped_file.cc",
"disk_cache/blockfile/mapped_file.h",
"disk_cache/blockfile/rankings.cc",
"disk_cache/blockfile/rankings.h",
"disk_cache/blockfile/sparse_control.cc",
"disk_cache/blockfile/sparse_control.h",
"disk_cache/blockfile/stats.cc",
"disk_cache/blockfile/stats.h",
"disk_cache/blockfile/storage_block-inl.h",
"disk_cache/blockfile/storage_block.h",
"disk_cache/blockfile/stress_support.h",
"disk_cache/cache_util.cc",
"disk_cache/cache_util.h",
"disk_cache/disk_cache.cc",
"disk_cache/disk_cache.h",
"disk_cache/memory/mem_backend_impl.cc",
"disk_cache/memory/mem_backend_impl.h",
"disk_cache/memory/mem_entry_impl.cc",
"disk_cache/memory/mem_entry_impl.h",
"disk_cache/net_log_parameters.cc",
"disk_cache/net_log_parameters.h",
"disk_cache/simple/post_doom_waiter.cc",
"disk_cache/simple/post_doom_waiter.h",
"disk_cache/simple/simple_backend_impl.cc",
"disk_cache/simple/simple_backend_impl.h",
"disk_cache/simple/simple_backend_version.h",
"disk_cache/simple/simple_entry_format.cc",
"disk_cache/simple/simple_entry_format.h",
"disk_cache/simple/simple_entry_format_history.h",
"disk_cache/simple/simple_entry_impl.cc",
"disk_cache/simple/simple_entry_impl.h",
"disk_cache/simple/simple_entry_operation.cc",
"disk_cache/simple/simple_entry_operation.h",
"disk_cache/simple/simple_file_tracker.cc",
"disk_cache/simple/simple_file_tracker.h",
"disk_cache/simple/simple_histogram_macros.h",
"disk_cache/simple/simple_index.cc",
"disk_cache/simple/simple_index.h",
"disk_cache/simple/simple_index_delegate.h",
"disk_cache/simple/simple_index_file.cc",
"disk_cache/simple/simple_index_file.h",
"disk_cache/simple/simple_net_log_parameters.cc",
"disk_cache/simple/simple_net_log_parameters.h",
"disk_cache/simple/simple_synchronous_entry.cc",
"disk_cache/simple/simple_synchronous_entry.h",
"disk_cache/simple/simple_util.cc",
"disk_cache/simple/simple_util.h",
"disk_cache/simple/simple_version_upgrade.cc",
"disk_cache/simple/simple_version_upgrade.h",
"filter/filter_source_stream.cc",
"filter/filter_source_stream.h",
"filter/gzip_header.cc",
"filter/gzip_header.h",
"filter/gzip_source_stream.cc",
"filter/gzip_source_stream.h",
"filter/source_stream.cc",
"filter/source_stream.h",
"filter/source_stream_type_list.h",
"http/alternative_service.cc",
"http/alternative_service.h",
"http/bidirectional_stream.cc",
"http/bidirectional_stream.h",
"http/bidirectional_stream_impl.cc",
"http/bidirectional_stream_impl.h",
"http/bidirectional_stream_request_info.cc",
"http/bidirectional_stream_request_info.h",
"http/broken_alternative_services.cc",
"http/broken_alternative_services.h",
"http/http_auth.cc",
"http/http_auth.h",
"http/http_auth_cache.cc",
"http/http_auth_cache.h",
"http/http_auth_controller.cc",
"http/http_auth_controller.h",
"http/http_auth_filter.cc",
"http/http_auth_filter.h",
"http/http_auth_handler.cc",
"http/http_auth_handler.h",
"http/http_auth_handler_basic.cc",
"http/http_auth_handler_basic.h",
"http/http_auth_handler_digest.cc",
"http/http_auth_handler_digest.h",
"http/http_auth_handler_factory.cc",
"http/http_auth_handler_factory.h",
"http/http_auth_handler_ntlm.cc",
"http/http_auth_handler_ntlm.h",
"http/http_auth_mechanism.h",
"http/http_auth_multi_round_parse.cc",
"http/http_auth_multi_round_parse.h",
"http/http_auth_preferences.cc",
"http/http_auth_preferences.h",
"http/http_basic_state.cc",
"http/http_basic_state.h",
"http/http_basic_stream.cc",
"http/http_basic_stream.h",
"http/http_cache.cc",
"http/http_cache.h",
"http/http_cache_lookup_manager.cc",
"http/http_cache_lookup_manager.h",
"http/http_cache_transaction.cc",
"http/http_cache_transaction.h",
"http/http_cache_writers.cc",
"http/http_cache_writers.h",
"http/http_chunked_decoder.cc",
"http/http_chunked_decoder.h",
"http/http_content_disposition.cc",
"http/http_content_disposition.h",
"http/http_network_layer.cc",
"http/http_network_layer.h",
"http/http_network_session.cc",
"http/http_network_session.h",
"http/http_network_session_peer.cc",
"http/http_network_session_peer.h",
"http/http_network_transaction.cc",
"http/http_network_transaction.h",
"http/http_proxy_client_socket.cc",
"http/http_proxy_client_socket.h",
"http/http_proxy_connect_job.cc",
"http/http_proxy_connect_job.h",
"http/http_request_info.cc",
"http/http_request_info.h",
"http/http_response_body_drainer.cc",
"http/http_response_body_drainer.h",
"http/http_server_properties.cc",
"http/http_server_properties.h",
"http/http_server_properties_manager.cc",
"http/http_server_properties_manager.h",
"http/http_status_code.cc",
"http/http_status_code.h",
"http/http_stream.h",
"http/http_stream_factory.cc",
"http/http_stream_factory.h",
"http/http_stream_factory_job.cc",
"http/http_stream_factory_job.h",
"http/http_stream_factory_job_controller.cc",
"http/http_stream_factory_job_controller.h",
"http/http_stream_parser.cc",
"http/http_stream_parser.h",
"http/http_stream_request.cc",
"http/http_stream_request.h",
"http/http_transaction.h",
"http/http_transaction_factory.h",
"http/http_version.h",
"http/partial_data.cc",
"http/partial_data.h",
"http/proxy_client_socket.cc",
"http/proxy_client_socket.h",
"http/proxy_fallback.cc",
"http/proxy_fallback.h",
"http/transport_security_persister.cc",
"http/transport_security_persister.h",
"http/url_security_manager.cc",
"http/url_security_manager.h",
"http/webfonts_histogram.cc",
"http/webfonts_histogram.h",
"http2/platform/impl/http2_bug_tracker_impl.h",
"http2/platform/impl/http2_containers_impl.h",
"http2/platform/impl/http2_estimate_memory_usage_impl.h",
"http2/platform/impl/http2_logging_impl.h",
"http2/platform/impl/http2_macros_impl.h",
"http2/platform/impl/http2_string_utils_impl.h",
"log/file_net_log_observer.cc",
"log/file_net_log_observer.h",
"log/net_log_util.cc",
"log/net_log_util.h",
"log/trace_net_log_observer.cc",
"log/trace_net_log_observer.h",
"nqe/cached_network_quality.cc",
"nqe/cached_network_quality.h",
"nqe/connectivity_monitor.cc",
"nqe/connectivity_monitor.h",
"nqe/effective_connection_type.cc",
"nqe/effective_connection_type.h",
"nqe/effective_connection_type_observer.h",
"nqe/event_creator.cc",
"nqe/event_creator.h",
"nqe/network_congestion_analyzer.cc",
"nqe/network_congestion_analyzer.h",
"nqe/network_id.cc",
"nqe/network_id.h",
"nqe/network_qualities_prefs_manager.cc",
"nqe/network_qualities_prefs_manager.h",
"nqe/network_quality.cc",
"nqe/network_quality.h",
"nqe/network_quality_estimator.cc",
"nqe/network_quality_estimator.h",
"nqe/network_quality_estimator_params.cc",
"nqe/network_quality_estimator_params.h",
"nqe/network_quality_estimator_util.cc",
"nqe/network_quality_estimator_util.h",
"nqe/network_quality_observation.cc",
"nqe/network_quality_observation.h",
"nqe/network_quality_observation_source.h",
"nqe/network_quality_store.cc",
"nqe/network_quality_store.h",
"nqe/observation_buffer.cc",
"nqe/observation_buffer.h",
"nqe/peer_to_peer_connections_count_observer.h",
"nqe/pref_names.cc",
"nqe/pref_names.h",
"nqe/rtt_throughput_estimates_observer.h",
"nqe/socket_watcher.cc",
"nqe/socket_watcher.h",
"nqe/socket_watcher_factory.cc",
"nqe/socket_watcher_factory.h",
"nqe/throughput_analyzer.cc",
"nqe/throughput_analyzer.h",
"nqe/weighted_observation.h",
"proxy_resolution/configured_proxy_resolution_request.cc",
"proxy_resolution/configured_proxy_resolution_request.h",
"proxy_resolution/configured_proxy_resolution_service.cc",
"proxy_resolution/configured_proxy_resolution_service.h",
"proxy_resolution/dhcp_pac_file_fetcher.cc",
"proxy_resolution/dhcp_pac_file_fetcher.h",
"proxy_resolution/multi_threaded_proxy_resolver.cc",
"proxy_resolution/multi_threaded_proxy_resolver.h",
"proxy_resolution/network_delegate_error_observer.cc",
"proxy_resolution/network_delegate_error_observer.h",
"proxy_resolution/pac_file_data.cc",
"proxy_resolution/pac_file_data.h",
"proxy_resolution/pac_file_decider.cc",
"proxy_resolution/pac_file_decider.h",
"proxy_resolution/pac_file_fetcher.h",
"proxy_resolution/pac_file_fetcher_impl.cc",
"proxy_resolution/pac_file_fetcher_impl.h",
"proxy_resolution/polling_proxy_config_service.cc",
"proxy_resolution/polling_proxy_config_service.h",
"proxy_resolution/proxy_bypass_rules.cc",
"proxy_resolution/proxy_bypass_rules.h",
"proxy_resolution/proxy_config.cc",
"proxy_resolution/proxy_config.h",
"proxy_resolution/proxy_config_service.h",
"proxy_resolution/proxy_config_service_fixed.cc",
"proxy_resolution/proxy_config_service_fixed.h",
"proxy_resolution/proxy_config_with_annotation.cc",
"proxy_resolution/proxy_config_with_annotation.h",
"proxy_resolution/proxy_info.cc",
"proxy_resolution/proxy_info.h",
"proxy_resolution/proxy_list.cc",
"proxy_resolution/proxy_list.h",
"proxy_resolution/proxy_resolution_request.h",
"proxy_resolution/proxy_resolution_service.h",
"proxy_resolution/proxy_resolve_dns_operation.h",
"proxy_resolution/proxy_resolver.h",
"proxy_resolution/proxy_resolver_error_observer.h",
"proxy_resolution/proxy_resolver_factory.cc",
"proxy_resolution/proxy_resolver_factory.h",
"proxy_resolution/proxy_retry_info.h",
"quic/address_utils.h",
"quic/bidirectional_stream_quic_impl.cc",
"quic/bidirectional_stream_quic_impl.h",
"quic/crypto/proof_source_chromium.cc",
"quic/crypto/proof_source_chromium.h",
"quic/crypto/proof_verifier_chromium.cc",
"quic/crypto/proof_verifier_chromium.h",
"quic/network_connection.cc",
"quic/network_connection.h",
"quic/platform/impl/quic_bug_tracker_impl.h",
"quic/platform/impl/quic_cert_utils_impl.h",
"quic/platform/impl/quic_chromium_clock.cc",
"quic/platform/impl/quic_chromium_clock.h",
"quic/platform/impl/quic_client_stats_impl.h",
"quic/platform/impl/quic_containers_impl.h",
"quic/platform/impl/quic_error_code_wrappers_impl.h",
"quic/platform/impl/quic_estimate_memory_usage_impl.h",
"quic/platform/impl/quic_export_impl.h",
"quic/platform/impl/quic_file_utils_impl.h",
"quic/platform/impl/quic_flag_utils_impl.h",
"quic/platform/impl/quic_flags_impl.cc",
"quic/platform/impl/quic_flags_impl.h",
"quic/platform/impl/quic_hostname_utils_impl.cc",
"quic/platform/impl/quic_hostname_utils_impl.h",
"quic/platform/impl/quic_iovec_impl.h",
"quic/platform/impl/quic_map_util_impl.h",
"quic/platform/impl/quic_mem_slice_impl.cc",
"quic/platform/impl/quic_mem_slice_impl.h",
"quic/platform/impl/quic_mem_slice_span_impl.cc",
"quic/platform/impl/quic_mem_slice_span_impl.h",
"quic/platform/impl/quic_mem_slice_storage_impl.cc",
"quic/platform/impl/quic_mem_slice_storage_impl.h",
"quic/platform/impl/quic_mutex_impl.cc",
"quic/platform/impl/quic_mutex_impl.h",
"quic/platform/impl/quic_pcc_sender_impl.h",
"quic/platform/impl/quic_prefetch_impl.h",
"quic/platform/impl/quic_ptr_util_impl.h",
"quic/platform/impl/quic_reference_counted_impl.h",
"quic/platform/impl/quic_server_stats_impl.h",
"quic/platform/impl/quic_sleep_impl.h",
"quic/platform/impl/quic_socket_address_impl.cc",
"quic/platform/impl/quic_socket_address_impl.h",
"quic/platform/impl/quic_stack_trace_impl.h",
"quic/platform/impl/quic_testvalue_impl.h",
"quic/properties_based_quic_server_info.cc",
"quic/properties_based_quic_server_info.h",
"quic/quic_address_mismatch.cc",
"quic/quic_address_mismatch.h",
"quic/quic_chromium_alarm_factory.cc",
"quic/quic_chromium_alarm_factory.h",
"quic/quic_chromium_client_session.cc",
"quic/quic_chromium_client_session.h",
"quic/quic_chromium_client_stream.cc",
"quic/quic_chromium_client_stream.h",
"quic/quic_chromium_connection_helper.cc",
"quic/quic_chromium_connection_helper.h",
"quic/quic_chromium_packet_reader.cc",
"quic/quic_chromium_packet_reader.h",
"quic/quic_chromium_packet_writer.cc",
"quic/quic_chromium_packet_writer.h",
"quic/quic_client_session_cache.cc",
"quic/quic_client_session_cache.h",
"quic/quic_clock_skew_detector.cc",
"quic/quic_clock_skew_detector.h",
"quic/quic_connection_logger.cc",
"quic/quic_connection_logger.h",
"quic/quic_connectivity_monitor.cc",
"quic/quic_connectivity_monitor.h",
"quic/quic_connectivity_probing_manager.cc",
"quic/quic_connectivity_probing_manager.h",
"quic/quic_context.cc",
"quic/quic_context.h",
"quic/quic_crypto_client_config_handle.cc",
"quic/quic_crypto_client_config_handle.h",
"quic/quic_crypto_client_stream_factory.cc",
"quic/quic_crypto_client_stream_factory.h",
"quic/quic_event_logger.cc",
"quic/quic_event_logger.h",
"quic/quic_http3_logger.cc",
"quic/quic_http3_logger.h",
"quic/quic_http_stream.cc",
"quic/quic_http_stream.h",
"quic/quic_http_utils.cc",
"quic/quic_http_utils.h",
"quic/quic_proxy_client_socket.cc",
"quic/quic_proxy_client_socket.h",
"quic/quic_server_info.cc",
"quic/quic_server_info.h",
"quic/quic_session_key.cc",
"quic/quic_session_key.h",
"quic/quic_stream_factory.cc",
"quic/quic_stream_factory.h",
"quic/quic_transport_client.cc",
"quic/quic_transport_client.h",
"quic/quic_transport_error.cc",
"quic/quic_transport_error.h",
"quiche/common/platform/impl/quiche_export_impl.h",
"quiche/common/platform/impl/quiche_flag_utils_impl.h",
"quiche/common/platform/impl/quiche_flags_impl.cc",
"quiche/common/platform/impl/quiche_flags_impl.h",
"quiche/common/platform/impl/quiche_logging_impl.h",
"quiche/common/platform/impl/quiche_map_util_impl.h",
"quiche/common/platform/impl/quiche_str_cat_impl.h",
"quiche/common/platform/impl/quiche_string_piece_impl.h",
"quiche/common/platform/impl/quiche_text_utils_impl.h",
"quiche/common/platform/impl/quiche_time_utils_impl.cc",
"quiche/common/platform/impl/quiche_time_utils_impl.h",
"quiche/common/platform/impl/quiche_unordered_containers_impl.h",
"socket/client_socket_factory.cc",
"socket/client_socket_factory.h",
"socket/client_socket_pool.cc",
"socket/client_socket_pool.h",
"socket/client_socket_pool_manager.cc",
"socket/client_socket_pool_manager.h",
"socket/client_socket_pool_manager_impl.cc",
"socket/client_socket_pool_manager_impl.h",
"socket/datagram_client_socket.h",
"socket/datagram_server_socket.h",
"socket/datagram_socket.h",
"socket/diff_serv_code_point.h",
"socket/server_socket.cc",
"socket/server_socket.h",
"socket/socket_descriptor.cc",
"socket/socket_descriptor.h",
"socket/socket_net_log_params.cc",
"socket/socket_net_log_params.h",
"socket/socket_options.cc",
"socket/socket_options.h",
"socket/socket_tag.cc",
"socket/socket_tag.h",
"socket/socks5_client_socket.cc",
"socket/socks5_client_socket.h",
"socket/socks_client_socket.cc",
"socket/socks_client_socket.h",
"socket/socks_connect_job.cc",
"socket/socks_connect_job.h",
"socket/ssl_connect_job.cc",
"socket/ssl_connect_job.h",
"socket/ssl_server_socket.h",
"socket/ssl_server_socket_impl.cc",
"socket/ssl_server_socket_impl.h",
"socket/tcp_client_socket.cc",
"socket/tcp_client_socket.h",
"socket/tcp_server_socket.cc",
"socket/tcp_server_socket.h",
"socket/tcp_socket.h",
"socket/transport_client_socket.cc",
"socket/transport_client_socket.h",
"socket/transport_client_socket_pool.cc",
"socket/transport_client_socket_pool.h",
"socket/transport_connect_job.cc",
"socket/transport_connect_job.h",
"socket/udp_client_socket.cc",
"socket/udp_client_socket.h",
"socket/udp_net_log_parameters.cc",
"socket/udp_net_log_parameters.h",
"socket/udp_server_socket.cc",
"socket/udp_server_socket.h",
"socket/udp_socket.h",
"socket/udp_socket_global_limits.cc",
"socket/udp_socket_global_limits.h",
"socket/websocket_endpoint_lock_manager.cc",
"socket/websocket_endpoint_lock_manager.h",
"socket/websocket_transport_client_socket_pool.cc",
"socket/websocket_transport_client_socket_pool.h",
"socket/websocket_transport_connect_job.cc",
"socket/websocket_transport_connect_job.h",
"socket/websocket_transport_connect_sub_job.cc",
"socket/websocket_transport_connect_sub_job.h",
"spdy/bidirectional_stream_spdy_impl.cc",
"spdy/bidirectional_stream_spdy_impl.h",
"spdy/buffered_spdy_framer.cc",
"spdy/buffered_spdy_framer.h",
"spdy/header_coalescer.cc",
"spdy/header_coalescer.h",
"spdy/http2_priority_dependencies.cc",
"spdy/http2_priority_dependencies.h",
"spdy/http2_push_promise_index.cc",
"spdy/http2_push_promise_index.h",
"spdy/multiplexed_http_stream.cc",
"spdy/multiplexed_http_stream.h",
"spdy/multiplexed_session.cc",
"spdy/multiplexed_session.h",
"spdy/platform/impl/spdy_bug_tracker_impl.h",
"spdy/platform/impl/spdy_containers_impl.h",
"spdy/platform/impl/spdy_estimate_memory_usage_impl.h",
"spdy/platform/impl/spdy_logging_impl.h",
"spdy/platform/impl/spdy_macros_impl.h",
"spdy/platform/impl/spdy_mem_slice_impl.cc",
"spdy/platform/impl/spdy_mem_slice_impl.h",
"spdy/platform/impl/spdy_string_utils_impl.cc",
"spdy/platform/impl/spdy_string_utils_impl.h",
"spdy/server_push_delegate.h",
"spdy/spdy_buffer.cc",
"spdy/spdy_buffer.h",
"spdy/spdy_buffer_producer.cc",
"spdy/spdy_buffer_producer.h",
"spdy/spdy_http_stream.cc",
"spdy/spdy_http_stream.h",
"spdy/spdy_http_utils.cc",
"spdy/spdy_http_utils.h",
"spdy/spdy_log_util.cc",
"spdy/spdy_log_util.h",
"spdy/spdy_proxy_client_socket.cc",
"spdy/spdy_proxy_client_socket.h",
"spdy/spdy_read_queue.cc",
"spdy/spdy_read_queue.h",
"spdy/spdy_session.cc",
"spdy/spdy_session.h",
"spdy/spdy_session_key.cc",
"spdy/spdy_session_key.h",
"spdy/spdy_session_pool.cc",
"spdy/spdy_session_pool.h",
"spdy/spdy_stream.cc",
"spdy/spdy_stream.h",
"spdy/spdy_write_queue.cc",
"spdy/spdy_write_queue.h",
"ssl/client_cert_store.h",
"ssl/ssl_config_service_defaults.cc",
"ssl/ssl_config_service_defaults.h",
"ssl/ssl_key_logger_impl.cc",
"ssl/ssl_key_logger_impl.h",
"ssl/ssl_platform_key_util.cc",
"ssl/ssl_platform_key_util.h",
"ssl/threaded_ssl_private_key.cc",
"ssl/threaded_ssl_private_key.h",
"url_request/redirect_info.cc",
"url_request/redirect_info.h",
"url_request/redirect_util.cc",
"url_request/redirect_util.h",
"url_request/referrer_policy.h",
"url_request/report_sender.cc",
"url_request/report_sender.h",
"url_request/static_http_user_agent_settings.cc",
"url_request/static_http_user_agent_settings.h",
"url_request/url_fetcher.cc",
"url_request/url_fetcher.h",
"url_request/url_fetcher_core.cc",
"url_request/url_fetcher_core.h",
"url_request/url_fetcher_delegate.cc",
"url_request/url_fetcher_delegate.h",
"url_request/url_fetcher_factory.h",
"url_request/url_fetcher_impl.cc",
"url_request/url_fetcher_impl.h",
"url_request/url_fetcher_response_writer.cc",
"url_request/url_fetcher_response_writer.h",
"url_request/url_request.cc",
"url_request/url_request.h",
"url_request/url_request_context.cc",
"url_request/url_request_context.h",
"url_request/url_request_context_builder.cc",
"url_request/url_request_context_builder.h",
"url_request/url_request_context_getter.cc",
"url_request/url_request_context_getter.h",
"url_request/url_request_context_getter_observer.h",
"url_request/url_request_context_storage.cc",
"url_request/url_request_context_storage.h",
"url_request/url_request_error_job.cc",
"url_request/url_request_error_job.h",
"url_request/url_request_filter.cc",
"url_request/url_request_filter.h",
"url_request/url_request_http_job.cc",
"url_request/url_request_http_job.h",
"url_request/url_request_interceptor.cc",
"url_request/url_request_interceptor.h",
"url_request/url_request_job.cc",
"url_request/url_request_job.h",
"url_request/url_request_job_factory.cc",
"url_request/url_request_job_factory.h",
"url_request/url_request_netlog_params.cc",
"url_request/url_request_netlog_params.h",
"url_request/url_request_redirect_job.cc",
"url_request/url_request_redirect_job.h",
"url_request/url_request_test_job.cc",
"url_request/url_request_test_job.h",
"url_request/url_request_throttler_entry.cc",
"url_request/url_request_throttler_entry.h",
"url_request/url_request_throttler_entry_interface.h",
"url_request/url_request_throttler_manager.cc",
"url_request/url_request_throttler_manager.h",
"url_request/view_cache_helper.cc",
"url_request/view_cache_helper.h",
"url_request/websocket_handshake_userdata_key.cc",
"url_request/websocket_handshake_userdata_key.h",
]
if (enable_reporting) {
sources += [
"network_error_logging/network_error_logging_service.cc",
"network_error_logging/network_error_logging_service.h",
"network_error_logging/persistent_reporting_and_nel_store.h",
"reporting/reporting_browsing_data_remover.cc",
"reporting/reporting_browsing_data_remover.h",
"reporting/reporting_cache.cc",
"reporting/reporting_cache.h",
"reporting/reporting_cache_impl.cc",
"reporting/reporting_cache_impl.h",
"reporting/reporting_cache_observer.cc",
"reporting/reporting_cache_observer.h",
"reporting/reporting_context.cc",
"reporting/reporting_context.h",
"reporting/reporting_delegate.cc",
"reporting/reporting_delegate.h",
"reporting/reporting_delivery_agent.cc",
"reporting/reporting_delivery_agent.h",
"reporting/reporting_endpoint.cc",
"reporting/reporting_endpoint.h",
"reporting/reporting_endpoint_manager.cc",
"reporting/reporting_endpoint_manager.h",
"reporting/reporting_garbage_collector.cc",
"reporting/reporting_garbage_collector.h",
"reporting/reporting_header_parser.cc",
"reporting/reporting_header_parser.h",
"reporting/reporting_network_change_observer.cc",
"reporting/reporting_network_change_observer.h",
"reporting/reporting_policy.cc",
"reporting/reporting_policy.h",
"reporting/reporting_report.cc",
"reporting/reporting_report.h",
"reporting/reporting_service.cc",
"reporting/reporting_service.h",
"reporting/reporting_uploader.cc",
"reporting/reporting_uploader.h",
]
}
if (is_android) {
sources += [
"android/android_http_util.cc",
"android/cellular_signal_strength.cc",
"android/cellular_signal_strength.h",
"android/cert_verify_result_android.cc",
"android/cert_verify_result_android.h",
"android/gurl_utils.cc",
"android/http_auth_negotiate_android.cc",
"android/http_auth_negotiate_android.h",
"android/keystore.cc",
"android/keystore.h",
"android/network_activation_request.cc",
"android/network_activation_request.h",
"android/network_change_notifier_android.cc",
"android/network_change_notifier_android.h",
"android/network_change_notifier_delegate_android.cc",
"android/network_change_notifier_delegate_android.h",
"android/network_change_notifier_factory_android.cc",
"android/network_change_notifier_factory_android.h",
"android/network_library.cc",
"android/network_library.h",
"android/traffic_stats.cc",
"android/traffic_stats.h",
"cert/cert_verify_proc_android.cc",
"cert/cert_verify_proc_android.h",
"cert/test_root_certs_android.cc",
"cert/x509_util_android.cc",
"proxy_resolution/proxy_config_service_android.cc",
"proxy_resolution/proxy_config_service_android.h",
"ssl/ssl_platform_key_android.cc",
"ssl/ssl_platform_key_android.h",
]
}
if (is_chromeos_ash && use_nss_certs) {
sources += [
"cert/nss_cert_database_chromeos.cc",
"cert/nss_cert_database_chromeos.h",
"cert/nss_profile_filter_chromeos.cc",
"cert/nss_profile_filter_chromeos.h",
]
}
if (is_ios) {
sources += [
"cert/cert_verify_proc_ios.cc",
"cert/cert_verify_proc_ios.h",
"cert/x509_util_ios.cc",
"cert/x509_util_ios.h",
"disk_cache/blockfile/file_ios.cc",
"proxy_resolution/proxy_config_service_ios.cc",
"proxy_resolution/proxy_config_service_ios.h",
]
}
if (is_linux || is_chromeos_lacros) {
sources += [
"base/network_change_notifier_linux.cc",
"base/network_change_notifier_linux.h",
"proxy_resolution/proxy_config_service_linux.cc",
"proxy_resolution/proxy_config_service_linux.h",
]
}
if (is_linux || is_chromeos || is_android) {
sources += [
"base/address_tracker_linux.cc",
"base/address_tracker_linux.h",
"base/network_interfaces_linux.cc",
"base/network_interfaces_linux.h",
"base/platform_mime_util_linux.cc",
]
}
if (is_mac) {
sources += [
"base/network_notification_thread_mac.cc",
"base/network_notification_thread_mac.h",
"cert/cert_database_mac.cc",
"cert/cert_verify_proc_mac.cc",
"cert/cert_verify_proc_mac.h",
"cert/internal/trust_store_mac.cc",
"cert/internal/trust_store_mac.h",
"cert/known_roots_mac.cc",
"cert/known_roots_mac.h",
"cert/test_keychain_search_list_mac.cc",
"cert/test_keychain_search_list_mac.h",
"cert/x509_util_mac.cc",
"cert/x509_util_mac.h",
"proxy_resolution/proxy_config_service_mac.cc",
"proxy_resolution/proxy_config_service_mac.h",
"ssl/client_cert_identity_mac.cc",
"ssl/client_cert_identity_mac.h",
"ssl/client_cert_store_mac.cc",
"ssl/client_cert_store_mac.h",
"ssl/ssl_platform_key_mac.cc",
"ssl/ssl_platform_key_mac.h",
]
}
if (is_apple) {
sources += [
"base/mac/url_conversions.h",
"base/mac/url_conversions.mm",
"base/network_change_notifier_mac.h",
"base/network_change_notifier_mac.mm",
"base/network_config_watcher_mac.cc",
"base/network_config_watcher_mac.h",
"base/platform_mime_util_mac.mm",
"base/proxy_server_mac.cc",
"cert/test_root_certs_mac.cc",
"cert/x509_util_ios_and_mac.cc",
"cert/x509_util_ios_and_mac.h",
"proxy_resolution/proxy_resolver_mac.cc",
"proxy_resolution/proxy_resolver_mac.h",
]
}
if (is_win) {
sources += [
"base/file_stream_context_win.cc",
"base/net_errors_win.cc",
"base/network_change_notifier_win.cc",
"base/network_change_notifier_win.h",
"base/network_interfaces_win.cc",
"base/network_interfaces_win.h",
"base/platform_mime_util_win.cc",
"base/winsock_init.cc",
"base/winsock_init.h",
"base/winsock_util.cc",
"base/winsock_util.h",
"cert/cert_verify_proc_win.cc",
"cert/cert_verify_proc_win.h",
"cert/known_roots_win.cc",
"cert/known_roots_win.h",
"cert/test_root_certs_win.cc",
"cert/x509_util_win.cc",
"cert/x509_util_win.h",
"disk_cache/blockfile/file_win.cc",
"disk_cache/blockfile/mapped_file_win.cc",
"disk_cache/cache_util_win.cc",
"disk_cache/simple/simple_index_file_win.cc",
"disk_cache/simple/simple_util_win.cc",
"http/http_auth_handler_ntlm_win.cc",
"http/http_auth_sspi_win.cc",
"http/http_auth_sspi_win.h",
"http/url_security_manager_win.cc",
"proxy_resolution/win/dhcp_pac_file_adapter_fetcher_win.cc",
"proxy_resolution/win/dhcp_pac_file_adapter_fetcher_win.h",
"proxy_resolution/win/dhcp_pac_file_fetcher_win.cc",
"proxy_resolution/win/dhcp_pac_file_fetcher_win.h",
"proxy_resolution/win/dhcpcsvc_init_win.cc",
"proxy_resolution/win/dhcpcsvc_init_win.h",
"proxy_resolution/win/proxy_config_service_win.cc",
"proxy_resolution/win/proxy_config_service_win.h",
"proxy_resolution/win/proxy_resolver_winhttp.cc",
"proxy_resolution/win/proxy_resolver_winhttp.h",
"proxy_resolution/win/windows_system_proxy_resolution_request.cc",
"proxy_resolution/win/windows_system_proxy_resolution_request.h",
"proxy_resolution/win/windows_system_proxy_resolution_service.cc",
"proxy_resolution/win/windows_system_proxy_resolution_service.h",
"proxy_resolution/win/windows_system_proxy_resolver.cc",
"proxy_resolution/win/windows_system_proxy_resolver.h",
"proxy_resolution/win/winhttp_api_wrapper.cc",
"proxy_resolution/win/winhttp_api_wrapper.h",
"proxy_resolution/win/winhttp_proxy_resolver_functions.cc",
"proxy_resolution/win/winhttp_proxy_resolver_functions.h",
"socket/tcp_socket_win.cc",
"socket/tcp_socket_win.h",
"socket/udp_socket_win.cc",
"socket/udp_socket_win.h",
"ssl/client_cert_store_win.cc",
"ssl/client_cert_store_win.h",
"ssl/ssl_platform_key_win.cc",
]
}
if (use_kerberos) {
sources += [
"http/http_auth_handler_negotiate.cc",
"http/http_auth_handler_negotiate.h",
]
}
if (is_posix || is_fuchsia) {
sources += [
"base/file_stream_context_posix.cc",
"base/network_interfaces_posix.cc",
"base/network_interfaces_posix.h",
"disk_cache/cache_util_posix.cc",
"disk_cache/simple/simple_index_file_posix.cc",
"disk_cache/simple/simple_util_posix.cc",
"http/url_security_manager_posix.cc",
"socket/socket_posix.cc",
"socket/socket_posix.h",
"socket/tcp_socket_posix.cc",
"socket/tcp_socket_posix.h",
"socket/udp_socket_posix.cc",
"socket/udp_socket_posix.h",
]
if (!is_ios) {
sources += [ "disk_cache/blockfile/file_posix.cc" ]
}
if (posix_avoid_mmap) {
sources += [ "disk_cache/blockfile/mapped_file_avoid_mmap_posix.cc" ]
} else {
sources += [ "disk_cache/blockfile/mapped_file_posix.cc" ]
}
}
if (is_android || is_chromeos_ash) {
sources += [
"base/network_change_notifier_posix.cc",
"base/network_change_notifier_posix.h",
]
}
if (!is_win) {
sources += [
"http/http_auth_handler_ntlm_portable.cc",
"http/http_auth_ntlm_mechanism.cc",
"http/http_auth_ntlm_mechanism.h",
"ntlm/ntlm.cc",
"ntlm/ntlm.h",
"ntlm/ntlm_buffer_reader.cc",
"ntlm/ntlm_buffer_reader.h",
"ntlm/ntlm_buffer_writer.cc",
"ntlm/ntlm_buffer_writer.h",
"ntlm/ntlm_client.cc",
"ntlm/ntlm_client.h",
"ntlm/ntlm_constants.cc",
"ntlm/ntlm_constants.h",
]
}
if (use_external_gssapi) {
sources += [
"http/http_auth_gssapi_posix.cc",
"http/http_auth_gssapi_posix.h",
]
}
# Use getifaddrs() on POSIX platforms, except Linux.
if (is_posix && !is_linux && !is_chromeos) {
sources += [
"base/network_interfaces_getifaddrs.cc",
"base/network_interfaces_getifaddrs.h",
]
}
if (use_nss_certs) {
sources += [
"cert/internal/system_trust_store_nss.h",
"cert/internal/trust_store_nss.cc",
"cert/internal/trust_store_nss.h",
"cert/known_roots_nss.cc",
"cert/known_roots_nss.h",
"cert/nss_cert_database.cc",
"cert/nss_cert_database.h",
"cert/test_root_certs_builtin.cc",
"cert/x509_util_nss.cc",
"cert/x509_util_nss.h",
"third_party/mozilla_security_manager/nsNSSCertificateDB.cpp",
"third_party/mozilla_security_manager/nsNSSCertificateDB.h",
"third_party/mozilla_security_manager/nsPKCS12Blob.cpp",
"third_party/mozilla_security_manager/nsPKCS12Blob.h",
"third_party/nss/ssl/cmpcert.cc",
"third_party/nss/ssl/cmpcert.h",
]
if (!is_chromecast) {
sources += [
"ssl/client_cert_store_nss.cc",
"ssl/client_cert_store_nss.h",
"ssl/ssl_platform_key_nss.cc",
"ssl/ssl_platform_key_nss.h",
]
}
}
if (is_fuchsia) {
deps += [ "//third_party/fuchsia-sdk/sdk/pkg/async-loop-cpp" ]
public_deps +=
[ "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.net.interfaces" ]
sources += [
"base/network_change_notifier_fuchsia.cc",
"base/network_change_notifier_fuchsia.h",
"base/network_interfaces_fuchsia.cc",
"base/network_interfaces_fuchsia.h",
"base/platform_mime_util_fuchsia.cc",
"cert/test_root_certs_builtin.cc",
]
}
if (trial_comparison_cert_verifier_supported) {
sources += [
"cert/trial_comparison_cert_verifier.cc",
"cert/trial_comparison_cert_verifier.h",
]
}
}
if (enable_unix_sockets) {
sources += [
"socket/unix_domain_client_socket_posix.cc",
"socket/unix_domain_client_socket_posix.h",
"socket/unix_domain_server_socket_posix.cc",
"socket/unix_domain_server_socket_posix.h",
]
}
cflags = []
if (is_mac) {
libs = [ "resolv" ]
frameworks = [
"CFNetwork.framework",
"CoreServices.framework",
"Foundation.framework",
"Security.framework",
"SystemConfiguration.framework",
]
}
if (is_ios) {
libs = [ "resolv" ]
frameworks = [
"CFNetwork.framework",
"CoreTelephony.framework",
"MobileCoreServices.framework",
"Security.framework",
"SystemConfiguration.framework",
]
}
if (is_win) {
libs = [
"crypt32.lib",
"dhcpcsvc.lib",
"iphlpapi.lib",
"ncrypt.lib",
"rpcrt4.lib",
"secur32.lib",
"urlmon.lib",
"winhttp.lib",
]
ldflags = [ "/DELAYLOAD:urlmon.dll" ]
}
if (!is_nacl) {
if (!disable_file_support) {
sources += [
"base/directory_lister.cc",
"base/directory_lister.h",
"base/directory_listing.cc",
"base/directory_listing.h",
]
}
if (!disable_ftp_support) {
sources += [
"ftp/ftp_auth_cache.cc",
"ftp/ftp_auth_cache.h",
"ftp/ftp_ctrl_response_buffer.cc",
"ftp/ftp_ctrl_response_buffer.h",
"ftp/ftp_directory_listing_parser.cc",
"ftp/ftp_directory_listing_parser.h",
"ftp/ftp_directory_listing_parser_ls.cc",
"ftp/ftp_directory_listing_parser_ls.h",
"ftp/ftp_directory_listing_parser_vms.cc",
"ftp/ftp_directory_listing_parser_vms.h",
"ftp/ftp_directory_listing_parser_windows.cc",
"ftp/ftp_directory_listing_parser_windows.h",
"ftp/ftp_network_layer.cc",
"ftp/ftp_network_layer.h",
"ftp/ftp_network_session.cc",
"ftp/ftp_network_session.h",
"ftp/ftp_network_transaction.cc",
"ftp/ftp_network_transaction.h",
"ftp/ftp_request_info.h",
"ftp/ftp_response_info.cc",
"ftp/ftp_response_info.h",
"ftp/ftp_server_type.h",
"ftp/ftp_transaction.h",
"ftp/ftp_transaction_factory.h",
"ftp/ftp_util.cc",
"ftp/ftp_util.h",
"url_request/ftp_protocol_handler.cc",
"url_request/ftp_protocol_handler.h",
"url_request/url_request_ftp_job.cc",
"url_request/url_request_ftp_job.h",
]
}
if (enable_websockets) {
sources += [
"websockets/websocket_basic_handshake_stream.cc",
"websockets/websocket_basic_handshake_stream.h",
"websockets/websocket_basic_stream.cc",
"websockets/websocket_basic_stream.h",
"websockets/websocket_basic_stream_adapters.cc",
"websockets/websocket_basic_stream_adapters.h",
"websockets/websocket_channel.cc",
"websockets/websocket_channel.h",
"websockets/websocket_deflate_parameters.cc",
"websockets/websocket_deflate_parameters.h",
"websockets/websocket_deflate_predictor.h",
"websockets/websocket_deflate_predictor_impl.cc",
"websockets/websocket_deflate_predictor_impl.h",
"websockets/websocket_deflate_stream.cc",
"websockets/websocket_deflate_stream.h",
"websockets/websocket_deflater.cc",
"websockets/websocket_deflater.h",
"websockets/websocket_errors.cc",
"websockets/websocket_errors.h",
"websockets/websocket_event_interface.h",
"websockets/websocket_extension.cc",
"websockets/websocket_extension.h",
"websockets/websocket_extension_parser.cc",
"websockets/websocket_extension_parser.h",
"websockets/websocket_frame.cc",
"websockets/websocket_frame.h",
"websockets/websocket_frame_parser.cc",
"websockets/websocket_frame_parser.h",
"websockets/websocket_handshake_challenge.cc",
"websockets/websocket_handshake_challenge.h",
"websockets/websocket_handshake_constants.cc",
"websockets/websocket_handshake_constants.h",
"websockets/websocket_handshake_request_info.cc",
"websockets/websocket_handshake_request_info.h",
"websockets/websocket_handshake_response_info.cc",
"websockets/websocket_handshake_response_info.h",
"websockets/websocket_handshake_stream_base.cc",
"websockets/websocket_handshake_stream_base.h",
"websockets/websocket_handshake_stream_create_helper.cc",
"websockets/websocket_handshake_stream_create_helper.h",
"websockets/websocket_http2_handshake_stream.cc",
"websockets/websocket_http2_handshake_stream.h",
"websockets/websocket_inflater.cc",
"websockets/websocket_inflater.h",
"websockets/websocket_stream.cc",
"websockets/websocket_stream.h",
]
}
# ICU support.
if (use_platform_icu_alternatives) {
if (is_android) {
# Use ICU alternative on Android.
sources += [ "base/net_string_util_icu_alternatives_android.cc" ]
} else if (is_ios) {
# Use ICU alternative on iOS.
sources += [ "base/net_string_util_icu_alternatives_ios.mm" ]
} else {
assert(false,
"ICU alternative is not implemented for platform: " + target_os)
}
} else {
# Use ICU.
sources += [
"base/filename_util_icu.cc",
"base/net_string_util_icu.cc",
]
}
# Brotli support.
if (!disable_brotli_filter) {
sources += [
"filter/brotli_source_stream.cc",
"filter/brotli_source_stream.h",
]
} else {
sources += [ "filter/brotli_source_stream_disabled.cc" ]
}
}
if (!is_debug && !optimize_for_size) {
configs -= [ "//build/config/compiler:default_optimization" ]
configs += [ "//build/config/compiler:optimize_max" ]
}
}
# net_export.h has its own build target so that code (eg
# net_nqe_proto) can use it without depending on the whole of //net.
source_set("net_export_header") {
sources = [ "base/net_export.h" ]
}
# Private dependencies for the //net component and for any build targets (e.g.
# source sets with circular dependencies with //net) that need to share the same
# dependencies.
source_set("net_deps") {
visibility = [
":net",
"//net/dns",
"//net/dns:dns_client",
"//net/dns:host_resolver",
"//net/dns:host_resolver_manager",
"//net/dns:mdns_client",
"//net/dns/public",
"//net/http:transport_security_state_generated_files",
"//net/third_party/quiche",
]
public_deps = [
":constants",
":net_export_header",
":net_resources",
":preload_decoder",
"//base",
"//base/util/type_safety:type_safety",
"//net/base/registry_controlled_domains",
"//third_party/protobuf:protobuf_lite",
"//url:buildflags",
]
public_configs = net_configs
if (!is_nacl) {
public_deps += [
"//base/third_party/dynamic_annotations",
"//third_party/zlib",
]
if (use_gio) {
public_configs += [ "//build/linux:gio_config" ]
}
if (is_android) {
public_deps += [ ":net_jni_headers" ]
}
if (is_fuchsia) {
public_deps += [
"//third_party/fuchsia-sdk/sdk/fidl/fuchsia.hardware.network",
"//third_party/fuchsia-sdk/sdk/fidl/fuchsia.net.interfaces",
"//third_party/fuchsia-sdk/sdk/pkg/sys_cpp",
]
}
if (use_platform_icu_alternatives) {
if (is_android) {
public_deps += [ ":net_jni_headers" ]
}
} else {
public_deps += [
"//base:i18n",
"//third_party/icu",
]
}
if (!disable_brotli_filter) {
public_deps += [ "//third_party/brotli:dec" ]
} else {
public_deps += [ "//third_party/brotli:headers" ]
}
}
}
# Public dependencies for the //net component and for any build targets (e.g.
# source sets with circular dependencies with //net) that need to share the same
# dependencies.
source_set("net_public_deps") {
visibility = [
":net",
"//net/dns",
"//net/dns:dns_client",
"//net/dns:host_resolver",
"//net/dns:host_resolver_manager",
"//net/dns:mdns_client",
"//net/dns/public",
"//net/http:transport_security_state_generated_files",
"//net/third_party/quiche",
]
public_deps = [
":buildflags",
":net_nqe_proto",
"//base",
"//crypto",
"//crypto:platform",
"//net/third_party/quiche:net_quic_proto",
"//net/third_party/quiche:net_quic_test_tools_proto",
"//net/third_party/quiche:quiche_public_deps",
"//net/traffic_annotation",
"//third_party/boringssl",
"//url",
]
if (is_nacl) {
public_deps += [ "//native_client_sdk/src/libraries/nacl_io" ]
}
}
if (is_android) {
java_cpp_enum("effective_connection_type_java") {
sources = [ "//net/nqe/effective_connection_type.h" ]
}
}
grit("net_resources") {
source = "base/net_resources.grd"
outputs = [
"grit/net_resources.h",
"net_resources.pak",
]
}
proto_library("net_nqe_proto") {
visibility = [ ":net_public_deps" ]
sources = [ "nqe/proto/network_id_proto.proto" ]
cc_generator_options = "dllexport_decl=NET_EXPORT_PRIVATE:"
cc_include = "net/base/net_export.h"
component_build_force_source_set = true
deps = [ ":net_export_header" ]
defines = [ "NET_IMPLEMENTATION" ]
extra_configs = [ "//build/config/compiler:wexit_time_destructors" ]
}
component("extras") {
sources = [
"extras/sqlite/cookie_crypto_delegate.h",
"extras/sqlite/sqlite_persistent_cookie_store.cc",
"extras/sqlite/sqlite_persistent_cookie_store.h",
"extras/sqlite/sqlite_persistent_store_backend_base.cc",
"extras/sqlite/sqlite_persistent_store_backend_base.h",
]
defines = [ "IS_NET_EXTRAS_IMPL" ]
configs += [ "//build/config/compiler:wexit_time_destructors" ]
deps = [
":net",
"//base",
"//sql:sql",
]
if (enable_reporting) {
sources += [
"extras/sqlite/sqlite_persistent_reporting_and_nel_store.cc",
"extras/sqlite/sqlite_persistent_reporting_and_nel_store.h",
]
}
}
static_library("preload_decoder") {
sources = [
"extras/preload_data/decoder.cc",
"extras/preload_data/decoder.h",
]
deps = [ "//base" ]
}
if (!is_ios) {
executable("dump_cache") {
testonly = true
sources = [
"tools/dump_cache/dump_cache.cc",
"tools/dump_cache/dump_files.cc",
"tools/dump_cache/dump_files.h",
]
deps = [
":net",
":test_support",
"//base",
"//build/win:default_exe_manifest",
]
}
}
# This section can be updated from globbing rules using:
# python ./tools/update_ios_bundle_data.py
bundle_data("test_support_bundle_data") {
visibility = [ ":test_support" ]
testonly = true
sources = [
"data/quic_http_response_cache_data/test.example.com/index.html",
"data/quic_http_response_cache_data/test.example.com/map.html",
"data/quic_http_response_cache_data_with_push/test.example.com/favicon.ico",
"data/quic_http_response_cache_data_with_push/test.example.com/index.html",
"data/quic_http_response_cache_data_with_push/test.example.com/index2.html",
"data/quic_http_response_cache_data_with_push/test.example.com/kitten-1.jpg",
"data/ssl/certificates/1024-rsa-ee-by-1024-rsa-intermediate.pem",
"data/ssl/certificates/1024-rsa-ee-by-2048-rsa-intermediate.pem",
"data/ssl/certificates/1024-rsa-ee-by-768-rsa-intermediate.pem",
"data/ssl/certificates/1024-rsa-ee-by-prime256v1-ecdsa-intermediate.pem",
"data/ssl/certificates/1024-rsa-intermediate.pem",
"data/ssl/certificates/10_year_validity.pem",
"data/ssl/certificates/11_year_validity.pem",
"data/ssl/certificates/2029_globalsign_com_cert.pem",
"data/ssl/certificates/2048-rsa-ee-by-1024-rsa-intermediate.pem",
"data/ssl/certificates/2048-rsa-ee-by-2048-rsa-intermediate.pem",
"data/ssl/certificates/2048-rsa-ee-by-768-rsa-intermediate.pem",
"data/ssl/certificates/2048-rsa-ee-by-prime256v1-ecdsa-intermediate.pem",
"data/ssl/certificates/2048-rsa-intermediate.pem",
"data/ssl/certificates/2048-rsa-root.pem",
"data/ssl/certificates/398_days_1_second_after_2020_09_01.pem",
"data/ssl/certificates/398_days_after_2020_09_01.pem",
"data/ssl/certificates/399_days_after_2020_09_01.pem",
"data/ssl/certificates/39_months_after_2015_04.pem",
"data/ssl/certificates/39_months_based_on_last_day.pem",
"data/ssl/certificates/40_months_after_2015_04.pem",
"data/ssl/certificates/60_months_after_2012_07.pem",
"data/ssl/certificates/61_months_after_2012_07.pem",
"data/ssl/certificates/768-rsa-ee-by-1024-rsa-intermediate.pem",
"data/ssl/certificates/768-rsa-ee-by-2048-rsa-intermediate.pem",
"data/ssl/certificates/768-rsa-ee-by-768-rsa-intermediate.pem",
"data/ssl/certificates/768-rsa-ee-by-prime256v1-ecdsa-intermediate.pem",
"data/ssl/certificates/768-rsa-intermediate.pem",
"data/ssl/certificates/825_days_1_second_after_2018_03_01.pem",
"data/ssl/certificates/825_days_after_2018_03_01.pem",
"data/ssl/certificates/826_days_after_2018_03_01.pem",
"data/ssl/certificates/900_days_after_2019_07_01.pem",
"data/ssl/certificates/BUILD.gn",
"data/ssl/certificates/README",
"data/ssl/certificates/aia-cert.pem",
"data/ssl/certificates/aia-intermediate.der",
"data/ssl/certificates/aia-root.pem",
"data/ssl/certificates/bad_validity.pem",
"data/ssl/certificates/can_sign_http_exchanges_draft_extension.pem",
"data/ssl/certificates/can_sign_http_exchanges_draft_extension_invalid.pem",
"data/ssl/certificates/client-empty-password.p12",
"data/ssl/certificates/client-nokey.p12",
"data/ssl/certificates/client-null-password.p12",
"data/ssl/certificates/client.p12",
"data/ssl/certificates/client_1.key",
"data/ssl/certificates/client_1.pem",
"data/ssl/certificates/client_1.pk8",
"data/ssl/certificates/client_1_ca.pem",
"data/ssl/certificates/client_2.key",
"data/ssl/certificates/client_2.pem",
"data/ssl/certificates/client_2.pk8",
"data/ssl/certificates/client_2_ca.pem",
"data/ssl/certificates/client_3.key",
"data/ssl/certificates/client_3.pem",
"data/ssl/certificates/client_3.pk8",
"data/ssl/certificates/client_3_ca.pem",
"data/ssl/certificates/client_4.key",
"data/ssl/certificates/client_4.pem",
"data/ssl/certificates/client_4.pk8",
"data/ssl/certificates/client_4_ca.pem",
"data/ssl/certificates/client_5.key",
"data/ssl/certificates/client_5.pem",
"data/ssl/certificates/client_5.pk8",
"data/ssl/certificates/client_5_ca.pem",
"data/ssl/certificates/client_6.key",
"data/ssl/certificates/client_6.pem",
"data/ssl/certificates/client_6.pk8",
"data/ssl/certificates/client_6_ca.pem",
"data/ssl/certificates/client_root_ca.pem",
"data/ssl/certificates/common_name_only.pem",
"data/ssl/certificates/comodo-chain.pem",
"data/ssl/certificates/crit-codeSigning-chain.pem",
"data/ssl/certificates/crlset_blocked_interception_by_intermediate.raw",
"data/ssl/certificates/crlset_blocked_interception_by_root.raw",
"data/ssl/certificates/crlset_by_intermediate_serial.raw",
"data/ssl/certificates/crlset_by_leaf_spki.raw",
"data/ssl/certificates/crlset_by_leaf_subject_no_spki.raw",
"data/ssl/certificates/crlset_by_root_serial.raw",
"data/ssl/certificates/crlset_by_root_spki.raw",
"data/ssl/certificates/crlset_by_root_subject.raw",
"data/ssl/certificates/crlset_by_root_subject_no_spki.raw",
"data/ssl/certificates/crlset_known_interception_by_root.raw",
"data/ssl/certificates/cross-signed-leaf.pem",
"data/ssl/certificates/cross-signed-root-md5.pem",
"data/ssl/certificates/cross-signed-root-sha256.pem",
"data/ssl/certificates/ct-test-embedded-cert.pem",
"data/ssl/certificates/ct-test-embedded-with-intermediate-chain.pem",
"data/ssl/certificates/ct-test-embedded-with-intermediate-preca-chain.pem",
"data/ssl/certificates/ct-test-embedded-with-preca-chain.pem",
"data/ssl/certificates/daltonridgeapts.com-chain.pem",
"data/ssl/certificates/dec_2017.pem",
"data/ssl/certificates/diginotar_cyber_ca.pem",
"data/ssl/certificates/diginotar_pkioverheid.pem",
"data/ssl/certificates/diginotar_pkioverheid_g2.pem",
"data/ssl/certificates/diginotar_public_ca_2025.pem",
"data/ssl/certificates/diginotar_root_ca.pem",
"data/ssl/certificates/diginotar_services_1024_ca.pem",
"data/ssl/certificates/duplicate_cn_1.p12",
"data/ssl/certificates/duplicate_cn_1.pem",
"data/ssl/certificates/duplicate_cn_2.p12",
"data/ssl/certificates/duplicate_cn_2.pem",
"data/ssl/certificates/eku-test-root.pem",
"data/ssl/certificates/empty_subject_cert.der",
"data/ssl/certificates/ev-multi-oid.pem",
"data/ssl/certificates/ev_test.pem",
"data/ssl/certificates/ev_test_state_only.pem",
"data/ssl/certificates/expired_cert.pem",
"data/ssl/certificates/explicit-policy-chain.pem",
"data/ssl/certificates/foaf.me.chromium-test-cert.der",
"data/ssl/certificates/gms.hongleong.com.my-verisign-chain.pem",
"data/ssl/certificates/google.binary.p7b",
"data/ssl/certificates/google.chain.pem",
"data/ssl/certificates/google.pem_cert.p7b",
"data/ssl/certificates/google.pem_pkcs7.p7b",
"data/ssl/certificates/google.single.der",
"data/ssl/certificates/google.single.pem",
"data/ssl/certificates/google_diginotar.pem",
"data/ssl/certificates/googlenew.chain.pem",
"data/ssl/certificates/intermediate_ca_cert.pem",
"data/ssl/certificates/invalid_key_usage_cert.der",
"data/ssl/certificates/key_usage_p256.key",
"data/ssl/certificates/key_usage_p256_both.pem",
"data/ssl/certificates/key_usage_p256_digitalsignature.pem",
"data/ssl/certificates/key_usage_p256_keyagreement.pem",
"data/ssl/certificates/key_usage_p256_no_extension.pem",
"data/ssl/certificates/key_usage_rsa.key",
"data/ssl/certificates/key_usage_rsa_both.pem",
"data/ssl/certificates/key_usage_rsa_digitalsignature.pem",
"data/ssl/certificates/key_usage_rsa_keyencipherment.pem",
"data/ssl/certificates/key_usage_rsa_no_extension.pem",
"data/ssl/certificates/large_key.pem",
"data/ssl/certificates/localhost_cert.pem",
"data/ssl/certificates/may_2018.pem",
"data/ssl/certificates/mit.davidben.der",
"data/ssl/certificates/multi-root-A-by-B.pem",
"data/ssl/certificates/multi-root-B-by-C.pem",
"data/ssl/certificates/multi-root-B-by-F.pem",
"data/ssl/certificates/multi-root-BFE.keychain",
"data/ssl/certificates/multi-root-C-by-D.pem",
"data/ssl/certificates/multi-root-C-by-E.pem",
"data/ssl/certificates/multi-root-D-by-D.pem",
"data/ssl/certificates/multi-root-E-by-E.pem",
"data/ssl/certificates/multi-root-F-by-E.pem",
"data/ssl/certificates/multi-root-chain1.pem",
"data/ssl/certificates/multi-root-chain2.pem",
"data/ssl/certificates/multi-root-crlset-C.raw",
"data/ssl/certificates/multi-root-crlset-CD-and-FE.raw",
"data/ssl/certificates/multi-root-crlset-D-and-E.raw",
"data/ssl/certificates/multi-root-crlset-E.raw",
"data/ssl/certificates/multi-root-crlset-unrelated.raw",
"data/ssl/certificates/multi-root.keychain",
"data/ssl/certificates/multivalue_rdn.pem",
"data/ssl/certificates/name-normalization-byteequal.pem",
"data/ssl/certificates/name-normalization-case-folding.pem",
"data/ssl/certificates/name-normalization-printable-utf8.pem",
"data/ssl/certificates/name_constraint_bad.pem",
"data/ssl/certificates/name_constraint_good.pem",
"data/ssl/certificates/ndn.ca.crt",
"data/ssl/certificates/nist.der",
"data/ssl/certificates/no_subject_common_name_cert.pem",
"data/ssl/certificates/non-crit-codeSigning-chain.pem",
"data/ssl/certificates/ocsp-test-root.pem",
"data/ssl/certificates/ok_cert.pem",
"data/ssl/certificates/ok_cert_by_intermediate.pem",
"data/ssl/certificates/post_june_2016.pem",
"data/ssl/certificates/pre_br_validity_bad_121.pem",
"data/ssl/certificates/pre_br_validity_bad_2020.pem",
"data/ssl/certificates/pre_br_validity_ok.pem",
"data/ssl/certificates/pre_june_2016.pem",
"data/ssl/certificates/prime256v1-ecdsa-ee-by-1024-rsa-intermediate.pem",
"data/ssl/certificates/prime256v1-ecdsa-ee-by-2048-rsa-intermediate.pem",
"data/ssl/certificates/prime256v1-ecdsa-ee-by-768-rsa-intermediate.pem",
"data/ssl/certificates/prime256v1-ecdsa-ee-by-prime256v1-ecdsa-intermediate.pem",
"data/ssl/certificates/prime256v1-ecdsa-intermediate.pem",
"data/ssl/certificates/punycodetest.pem",
"data/ssl/certificates/quic-chain.pem",
"data/ssl/certificates/quic-leaf-cert.key",
"data/ssl/certificates/quic-leaf-cert.key.pkcs8.pem",
"data/ssl/certificates/quic-leaf-cert.key.sct",
"data/ssl/certificates/quic-root.pem",
"data/ssl/certificates/quic-short-lived.pem",
"data/ssl/certificates/redundant-server-chain.pem",
"data/ssl/certificates/redundant-validated-chain-root.pem",
"data/ssl/certificates/redundant-validated-chain.pem",
"data/ssl/certificates/reject_intranet_hosts.pem",
"data/ssl/certificates/root_ca_cert.pem",
"data/ssl/certificates/salesforce_com_test.pem",
"data/ssl/certificates/self-signed-invalid-name.pem",
"data/ssl/certificates/self-signed-invalid-sig.pem",
"data/ssl/certificates/sha1_2016.pem",
"data/ssl/certificates/sha1_leaf.pem",
"data/ssl/certificates/spdy_pooling.pem",
"data/ssl/certificates/start_after_expiry.pem",
"data/ssl/certificates/subjectAltName_sanity_check.pem",
"data/ssl/certificates/subjectAltName_www_example_com.pem",
"data/ssl/certificates/test_names.pem",
"data/ssl/certificates/thawte.single.pem",
"data/ssl/certificates/tls_feature_extension.pem",
"data/ssl/certificates/treadclimber.pem",
"data/ssl/certificates/treadclimber.sctlist",
"data/ssl/certificates/unescaped.pem",
"data/ssl/certificates/unittest.key.bin",
"data/ssl/certificates/unittest.selfsigned.der",
"data/ssl/certificates/verisign_class3_g5_crosssigned-trusted.keychain",
"data/ssl/certificates/verisign_class3_g5_crosssigned.pem",
"data/ssl/certificates/verisign_intermediate_ca_2011.pem",
"data/ssl/certificates/verisign_intermediate_ca_2016.pem",
"data/ssl/certificates/weak_digest_md2_ee.pem",
"data/ssl/certificates/weak_digest_md2_intermediate.pem",
"data/ssl/certificates/weak_digest_md2_root.pem",
"data/ssl/certificates/weak_digest_md4_ee.pem",
"data/ssl/certificates/weak_digest_md4_intermediate.pem",
"data/ssl/certificates/weak_digest_md4_root.pem",
"data/ssl/certificates/weak_digest_md5_ee.pem",
"data/ssl/certificates/weak_digest_md5_intermediate.pem",
"data/ssl/certificates/weak_digest_md5_root.pem",
"data/ssl/certificates/weak_digest_sha1_ee.pem",
"data/ssl/certificates/weak_digest_sha1_intermediate.pem",
"data/ssl/certificates/weak_digest_sha1_root.pem",
"data/ssl/certificates/websocket_cacert.pem",
"data/ssl/certificates/websocket_client_cert.p12",
"data/ssl/certificates/wildcard.pem",
"data/ssl/certificates/www.ahrn.com.pem",
"data/ssl/certificates/x509_verify_results.chain.pem",
]
outputs = [ "{{bundle_resources_dir}}/" +
"{{source_root_relative_dir}}/{{source_file_part}}" ]
}
static_library("test_support") {
testonly = true
sources = [
"base/load_timing_info_test_util.cc",
"base/load_timing_info_test_util.h",
"base/mock_file_stream.cc",
"base/mock_file_stream.h",
"base/mock_network_change_notifier.cc",
"base/mock_network_change_notifier.h",
"base/test_completion_callback.cc",
"base/test_completion_callback.h",
"cert/mock_cert_verifier.cc",
"cert/mock_cert_verifier.h",
"cert/mock_client_cert_verifier.cc",
"cert/mock_client_cert_verifier.h",
"cookies/canonical_cookie_test_helpers.h",
"cookies/cookie_change_dispatcher_test_helpers.cc",
"cookies/cookie_change_dispatcher_test_helpers.h",
"cookies/cookie_monster_store_test.cc",
"cookies/cookie_monster_store_test.h",
"cookies/cookie_store_change_unittest.h",
"cookies/cookie_store_test_callbacks.cc",
"cookies/cookie_store_test_callbacks.h",
"cookies/cookie_store_test_helpers.cc",
"cookies/cookie_store_test_helpers.h",
"cookies/cookie_store_unittest.h",
"cookies/test_cookie_access_delegate.cc",
"cookies/test_cookie_access_delegate.h",
"disk_cache/disk_cache_test_base.cc",
"disk_cache/disk_cache_test_base.h",
"disk_cache/disk_cache_test_util.cc",
"disk_cache/disk_cache_test_util.h",
"filter/filter_source_stream_test_util.cc",
"filter/filter_source_stream_test_util.h",
"filter/mock_source_stream.cc",
"filter/mock_source_stream.h",
"http/http_stream_factory_test_util.cc",
"http/http_stream_factory_test_util.h",
"http/http_transaction_test_util.cc",
"http/http_transaction_test_util.h",
"http/mock_http_cache.cc",
"http/mock_http_cache.h",
"http/transport_security_state_test_util.cc",
"http/transport_security_state_test_util.h",
"log/test_net_log.cc",
"log/test_net_log.h",
"log/test_net_log_util.cc",
"log/test_net_log_util.h",
"nqe/network_quality_estimator_test_util.cc",
"nqe/network_quality_estimator_test_util.h",
"proxy_resolution/mock_pac_file_fetcher.cc",
"proxy_resolution/mock_pac_file_fetcher.h",
"proxy_resolution/mock_proxy_resolver.cc",
"proxy_resolution/mock_proxy_resolver.h",
"proxy_resolution/proxy_config_service_common_unittest.cc",
"proxy_resolution/proxy_config_service_common_unittest.h",
"quic/quic_test_packet_printer.cc",
"quic/quic_test_packet_printer.h",
"socket/read_buffering_stream_socket.cc",
"socket/read_buffering_stream_socket.h",
"socket/socket_test_util.cc",
"socket/socket_test_util.h",
"spdy/spdy_test_util_common.cc",
"spdy/spdy_test_util_common.h",
"ssl/client_cert_identity_test_util.cc",
"ssl/client_cert_identity_test_util.h",
"ssl/ssl_private_key_test_util.cc",
"ssl/ssl_private_key_test_util.h",
"ssl/test_ssl_config_service.cc",
"ssl/test_ssl_config_service.h",
"ssl/test_ssl_private_key.cc",
"ssl/test_ssl_private_key.h",
"test/cert_builder.cc",
"test/cert_builder.h",
"test/cert_test_util.cc",
"test/cert_test_util.h",
"test/ct_test_util.cc",
"test/ct_test_util.h",
"test/embedded_test_server/controllable_http_response.cc",
"test/embedded_test_server/controllable_http_response.h",
"test/embedded_test_server/default_handlers.cc",
"test/embedded_test_server/default_handlers.h",
"test/embedded_test_server/embedded_test_server.cc",
"test/embedded_test_server/embedded_test_server.h",
"test/embedded_test_server/embedded_test_server_connection_listener.h",
"test/embedded_test_server/http_connection.cc",
"test/embedded_test_server/http_connection.h",
"test/embedded_test_server/http_request.cc",
"test/embedded_test_server/http_request.h",
"test/embedded_test_server/http_response.cc",
"test/embedded_test_server/http_response.h",
"test/embedded_test_server/request_handler_util.cc",
"test/embedded_test_server/request_handler_util.h",
"test/embedded_test_server/simple_connection_listener.cc",
"test/embedded_test_server/simple_connection_listener.h",
"test/event_waiter.h",
"test/gtest_util.h",
"test/key_util.cc",
"test/key_util.h",
"test/net_test_suite.cc",
"test/net_test_suite.h",
"test/quic_simple_test_server.cc",
"test/quic_simple_test_server.h",
"test/revocation_builder.cc",
"test/revocation_builder.h",
"test/scoped_disable_exit_on_dfatal.cc",
"test/scoped_disable_exit_on_dfatal.h",
"test/test_certificate_data.h",
"test/test_data_directory.cc",
"test/test_data_directory.h",
"test/test_with_task_environment.h",
"test/url_request/ssl_certificate_error_job.cc",
"test/url_request/ssl_certificate_error_job.h",
"test/url_request/url_request_failed_job.cc",
"test/url_request/url_request_failed_job.h",
"test/url_request/url_request_hanging_read_job.cc",
"test/url_request/url_request_hanging_read_job.h",
"test/url_request/url_request_mock_data_job.cc",
"test/url_request/url_request_mock_data_job.h",
"url_request/test_url_fetcher_factory.cc",
"url_request/test_url_fetcher_factory.h",
"url_request/url_request_test_util.cc",
"url_request/url_request_test_util.h",
]
if (is_mac) {
sources += [
"test/keychain_test_util_mac.cc",
"test/keychain_test_util_mac.h",
]
}
configs += [ "//build/config:precompiled_headers" ]
public_deps = [
"//base",
"//base/test:test_support",
"//crypto",
"//net",
"//net/dns:test_support",
"//net/tools/tld_cleanup",
"//net/traffic_annotation:test_support",
"//testing/gmock",
"//testing/gtest",
"//url",
]
deps = [
":simple_quic_tools",
"//net/http:transport_security_state_unittest_data_default",
"//third_party/zlib",
]
allow_circular_includes_from = [ "//net/dns:test_support" ]
data = [ "data/" ]
if (is_mac) {
frameworks = [ "Security.framework" ]
}
if (is_ios) {
deps += [ ":test_support_bundle_data" ]
} else {
public_deps += [ "//third_party/protobuf:py_proto_runtime" ]
}
if (use_nss_certs) {
public_deps += [ "//crypto:platform" ]
}
if (!is_ios) {
sources += [
"test/spawned_test_server/base_test_server.cc",
"test/spawned_test_server/base_test_server.h",
"test/spawned_test_server/spawned_test_server.h",
]
}
public_configs = [ ":net_test_config" ]
if (use_remote_test_server) {
sources += [
"test/spawned_test_server/remote_test_server.cc",
"test/spawned_test_server/remote_test_server.h",
"test/spawned_test_server/remote_test_server_spawner_request.cc",
"test/spawned_test_server/remote_test_server_spawner_request.h",
]
} else if (!is_ios) {
sources += [
"test/spawned_test_server/local_test_server.cc",
"test/spawned_test_server/local_test_server.h",
]
if (is_win) {
sources += [ "test/spawned_test_server/local_test_server_win.cc" ]
} else if (is_posix || is_fuchsia) {
sources += [ "test/spawned_test_server/local_test_server_posix.cc" ]
}
}
if (enable_python_utils) {
sources += [
"test/python_utils.cc",
"test/python_utils.h",
]
}
if (use_nss_certs) {
sources += [ "test/cert_test_util_nss.cc" ]
}
if (!disable_file_support) {
sources += [
"test/url_request/url_request_mock_http_job.cc",
"test/url_request/url_request_mock_http_job.h",
"test/url_request/url_request_test_job_backed_by_file.cc",
"test/url_request/url_request_test_job_backed_by_file.h",
]
}
if (enable_reporting) {
sources += [
"network_error_logging/mock_persistent_nel_store.cc",
"network_error_logging/mock_persistent_nel_store.h",
"network_error_logging/network_error_logging_test_util.cc",
"network_error_logging/network_error_logging_test_util.h",
"reporting/mock_persistent_reporting_store.cc",
"reporting/mock_persistent_reporting_store.h",
"reporting/reporting_test_util.cc",
"reporting/reporting_test_util.h",
]
}
}
if (!is_ios && !is_android) {
executable("cert_verify_tool") {
testonly = true
sources = [
"tools/cert_verify_tool/cert_verify_tool.cc",
"tools/cert_verify_tool/cert_verify_tool_util.cc",
"tools/cert_verify_tool/cert_verify_tool_util.h",
"tools/cert_verify_tool/verify_using_cert_verify_proc.cc",
"tools/cert_verify_tool/verify_using_cert_verify_proc.h",
"tools/cert_verify_tool/verify_using_path_builder.cc",
"tools/cert_verify_tool/verify_using_path_builder.h",
]
deps = [
":net",
":test_support",
"//base",
"//build/win:default_exe_manifest",
]
if (is_mac) {
frameworks = [ "Security.framework" ]
}
}
executable("crash_cache") {
testonly = true
sources = [ "tools/crash_cache/crash_cache.cc" ]
deps = [
":net",
":test_support",
"//base",
"//build/win:default_exe_manifest",
]
}
executable("hpack_example_generator") {
testonly = true
sources = [ "spdy/fuzzing/hpack_example_generator.cc" ]
deps = [
":net",
":spdy_test_tools",
"//base",
"//build/win:default_exe_manifest",
]
}
executable("net_watcher") {
testonly = true
sources = [ "tools/net_watcher/net_watcher.cc" ]
deps = [
":net",
"//base",
"//build:chromeos_buildflags",
"//build/win:default_exe_manifest",
]
}
executable("run_testserver") {
testonly = true
sources = [ "tools/testserver/run_testserver.cc" ]
deps = [
":test_support",
"//base",
"//base/test:test_support",
"//build/win:default_exe_manifest",
"//testing/gtest",
]
}
executable("stress_cache") {
testonly = true
sources = [ "tools/stress_cache/stress_cache.cc" ]
deps = [
":net",
":test_support",
"//base",
"//build/win:default_exe_manifest",
]
}
executable("tld_cleanup") {
sources = [ "tools/tld_cleanup/tld_cleanup.cc" ]
deps = [
"//base",
"//base:i18n",
"//build/win:default_exe_manifest",
"//net/tools/tld_cleanup",
]
}
}
if (use_external_gssapi) {
# In order for the tests to be reliable, these two targets cannot depend on a
# valid GSSAPI library. This is easy to achieve on most platforms. But on
# macOS care must be taken to not depend directly or indirectly on
# GSS.framework. This is suprisingly easy to get wrong since
# Security.framework is such a common dependency and it indirectly depends on
# GSS.
shared_library("test_gssapi") {
testonly = true
sources = [
"tools/gssapi/gss_import_name.cc",
"tools/gssapi/gss_methods.cc",
"tools/gssapi/gss_types.h",
]
}
shared_library("test_badgssapi") {
testonly = true
sources = [
"tools/gssapi/gss_methods.cc",
"tools/gssapi/gss_types.h",
]
}
}
if (is_linux || is_chromeos || is_mac) {
executable("cachetool") {
testonly = true
sources = [ "tools/cachetool/cachetool.cc" ]
deps = [
":net",
":test_support",
"//base",
]
}
executable("content_decoder_tool") {
testonly = true
sources = [
"tools/content_decoder_tool/content_decoder_tool.cc",
"tools/content_decoder_tool/content_decoder_tool.h",
"tools/content_decoder_tool/content_decoder_tool_bin.cc",
]
deps = [
":net",
":test_support",
"//base",
"//url",
]
}
}
if (is_linux || is_chromeos) {
static_library("epoll_server") {
sources = [
"tools/epoll_server/platform/impl/epoll_bug_impl.h",
"tools/epoll_server/platform/impl/epoll_export_impl.h",
"tools/epoll_server/platform/impl/epoll_logging_impl.h",
"tools/epoll_server/platform/impl/epoll_ptr_util_impl.h",
"tools/epoll_server/platform/impl/epoll_thread_impl.h",
"tools/epoll_server/platform/impl/epoll_time_impl.h",
]
deps = [
":net",
"//base",
]
public_deps = [ "//net/third_party/quiche:epoll_server_core" ]
allow_circular_includes_from =
[ "//net/third_party/quiche:epoll_server_core" ]
}
source_set("epoll_quic_tools") {
sources = [
"quic/platform/impl/quic_epoll_clock.cc",
"quic/platform/impl/quic_epoll_clock.h",
"quic/platform/impl/quic_linux_socket_utils.cc",
"quic/platform/impl/quic_linux_socket_utils.h",
"quic/platform/impl/quic_socket_utils.cc",
"quic/platform/impl/quic_socket_utils.h",
"quic/platform/impl/quic_stream_buffer_allocator_impl.h",
"quic/platform/impl/quic_udp_socket_platform_impl.h",
]
deps = [
":epoll_server",
":net",
":simple_quic_tools",
"//base",
"//base/third_party/dynamic_annotations",
"//crypto",
"//third_party/boringssl",
"//url",
]
public_deps = [ "//net/third_party/quiche:epoll_quic_tools_core" ]
allow_circular_includes_from =
[ "//net/third_party/quiche:epoll_quic_tools_core" ]
}
}
if (is_android) {
generate_jni("net_jni_headers") {
sources = [
"android/java/src/org/chromium/net/AndroidCellularSignalStrength.java",
"android/java/src/org/chromium/net/AndroidCertVerifyResult.java",
"android/java/src/org/chromium/net/AndroidKeyStore.java",
"android/java/src/org/chromium/net/AndroidNetworkLibrary.java",
"android/java/src/org/chromium/net/AndroidTrafficStats.java",
"android/java/src/org/chromium/net/DnsStatus.java",
"android/java/src/org/chromium/net/GURLUtils.java",
"android/java/src/org/chromium/net/HttpNegotiateAuthenticator.java",
"android/java/src/org/chromium/net/HttpUtil.java",
"android/java/src/org/chromium/net/NetStringUtil.java",
"android/java/src/org/chromium/net/NetworkActivationRequest.java",
"android/java/src/org/chromium/net/NetworkChangeNotifier.java",
"android/java/src/org/chromium/net/ProxyChangeListener.java",
"android/java/src/org/chromium/net/X509Util.java",
]
}
generate_jni("net_test_jni_headers") {
testonly = true
sources = [
"android/javatests/src/org/chromium/net/AndroidKeyStoreTestUtil.java",
"android/javatests/src/org/chromium/net/AndroidNetworkLibraryTestUtil.java",
"android/javatests/src/org/chromium/net/AndroidProxyConfigServiceTestUtil.java",
"test/android/javatests/src/org/chromium/net/test/DummySpnegoAuthenticator.java",
"test/android/javatests/src/org/chromium/net/test/EmbeddedTestServerImpl.java",
]
}
}
if (is_android || is_linux || is_chromeos) {
executable("disk_cache_memory_test") {
testonly = true
sources = [ "tools/disk_cache_memory_test/disk_cache_memory_test.cc" ]
deps = [
":net",
"//base",
]
}
}
source_set("epoll_server_test_tools") {
testonly = true
sources = [
"tools/epoll_server/platform/impl/epoll_address_test_utils_impl.h",
"tools/epoll_server/platform/impl/epoll_expect_bug_impl.h",
"tools/epoll_server/platform/impl/epoll_test_impl.h",
]
deps = [
":net",
":test_support",
"//base",
"//testing/gmock",
"//testing/gtest",
]
public_deps = [ "//net/third_party/quiche:epoll_server_test_tools_core" ]
allow_circular_includes_from =
[ "//net/third_party/quiche:epoll_server_test_tools_core" ]
}
source_set("spdy_test_tools") {
testonly = true
sources = [
"spdy/fuzzing/hpack_fuzz_util.cc",
"spdy/fuzzing/hpack_fuzz_util.h",
"spdy/platform/impl/spdy_test_impl.h",
]
deps = [
":net",
"//base",
"//testing/gmock",
"//testing/gtest",
]
}
source_set("quiche_test_tools") {
testonly = true
sources = [ "quiche/common/platform/impl/quiche_test_impl.h" ]
deps = [
":net",
"//testing/gmock",
"//testing/gtest",
]
public_deps = [ "//net/third_party/quiche:quiche_test_tools_core" ]
allow_circular_includes_from =
[ "//net/third_party/quiche:quiche_test_tools_core" ]
}
source_set("quic_test_tools") {
testonly = true
sources = [
"quic/crypto_test_utils_chromium.cc",
"quic/mock_crypto_client_stream.cc",
"quic/mock_crypto_client_stream.h",
"quic/mock_crypto_client_stream_factory.cc",
"quic/mock_crypto_client_stream_factory.h",
"quic/mock_decrypter.cc",
"quic/mock_decrypter.h",
"quic/mock_encrypter.cc",
"quic/mock_encrypter.h",
"quic/mock_quic_context.cc",
"quic/mock_quic_context.h",
"quic/platform/impl/quic_epoll_test_tools_impl.h",
"quic/platform/impl/quic_expect_bug_impl.h",
"quic/platform/impl/quic_mock_log_impl.h",
"quic/platform/impl/quic_port_utils_impl.cc",
"quic/platform/impl/quic_port_utils_impl.h",
"quic/platform/impl/quic_test_impl.cc",
"quic/platform/impl/quic_test_impl.h",
"quic/platform/impl/quic_test_loopback_impl.cc",
"quic/platform/impl/quic_test_loopback_impl.h",
"quic/platform/impl/quic_test_mem_slice_vector_impl.cc",
"quic/platform/impl/quic_test_mem_slice_vector_impl.h",
"quic/platform/impl/quic_test_output_impl.cc",
"quic/platform/impl/quic_test_output_impl.h",
"quic/test_task_runner.cc",
"quic/test_task_runner.h",
"third_party/quiche/src/quic/test_tools/test_ticket_crypter.cc",
]
deps = [
":net",
":quiche_test_tools",
":simple_quic_tools",
":test_support",
"//base",
"//crypto:test_support",
"//testing/gmock",
"//testing/gtest",
"//third_party/boringssl",
"//third_party/protobuf:protobuf_lite",
"//third_party/quic_trace:quic_trace_proto",
]
public_deps = [ "//net/third_party/quiche:quic_test_tools_core" ]
allow_circular_includes_from =
[ "//net/third_party/quiche:quic_test_tools_core" ]
}
source_set("simple_quic_tools") {
sources = [
"quic/platform/impl/quic_default_proof_providers_impl.cc",
"quic/platform/impl/quic_default_proof_providers_impl.h",
"quic/platform/impl/quic_system_event_loop_impl.h",
"tools/quic/quic_client_message_loop_network_helper.cc",
"tools/quic/quic_client_message_loop_network_helper.h",
"tools/quic/quic_http_proxy_backend.cc",
"tools/quic/quic_http_proxy_backend.h",
"tools/quic/quic_http_proxy_backend_stream.cc",
"tools/quic/quic_http_proxy_backend_stream.h",
"tools/quic/quic_simple_client.cc",
"tools/quic/quic_simple_client.h",
"tools/quic/quic_simple_server.cc",
"tools/quic/quic_simple_server.h",
"tools/quic/quic_simple_server_packet_writer.cc",
"tools/quic/quic_simple_server_packet_writer.h",
"tools/quic/quic_simple_server_session_helper.cc",
"tools/quic/quic_simple_server_session_helper.h",
"tools/quic/quic_simple_server_socket.cc",
"tools/quic/quic_simple_server_socket.h",
"tools/quic/quic_transport_simple_server.cc",
"tools/quic/quic_transport_simple_server.h",
"tools/quic/synchronous_host_resolver.cc",
"tools/quic/synchronous_host_resolver.h",
]
deps = [
":net",
"//base",
"//base/third_party/dynamic_annotations",
"//net/third_party/quiche:simple_quic_tools_core",
"//third_party/protobuf:protobuf_lite",
"//url",
]
public_deps = [ "//net/third_party/quiche:simple_quic_tools_core" ]
allow_circular_includes_from =
[ "//net/third_party/quiche:simple_quic_tools_core" ]
}
if (!is_ios) {
executable("quic_client") {
sources = [ "tools/quic/quic_simple_client_bin.cc" ]
deps = [
":net",
":simple_quic_tools",
"//base",
"//build/win:default_exe_manifest",
"//url",
]
public_deps = [ "//net/third_party/quiche:quic_client_core" ]
allow_circular_includes_from =
[ "//net/third_party/quiche:quic_client_core" ]
}
executable("quic_server") {
sources = [
"tools/quic/quic_simple_server_backend_factory.cc",
"tools/quic/quic_simple_server_backend_factory.h",
"tools/quic/quic_simple_server_bin.cc",
]
deps = [
":net",
":simple_quic_tools",
"//base",
"//build/win:default_exe_manifest",
"//third_party/boringssl",
"//third_party/protobuf:protobuf_lite",
]
public_deps = [ "//net/third_party/quiche:quic_server_core" ]
allow_circular_includes_from =
[ "//net/third_party/quiche:quic_server_core" ]
}
executable("quic_transport_simple_server") {
sources = [ "tools/quic/quic_transport_simple_server_bin.cc" ]
deps = [
":net",
":simple_quic_tools",
"//base",
"//build/win:default_exe_manifest",
"//third_party/boringssl",
"//third_party/protobuf:protobuf_lite",
]
}
executable("crypto_message_printer") {
sources = [ "tools/quic/crypto_message_printer_bin.cc" ]
deps = [
":net",
"//base",
"//build/win:default_exe_manifest",
]
}
}
# This section can be updated from globbing rules using:
# python ./tools/update_ios_bundle_data.py
bundle_data("net_unittests_bundle_data") {
testonly = true
sources = [
"data/cert_issuer_source_aia_unittest/i.pem",
"data/cert_issuer_source_aia_unittest/i2.pem",
"data/cert_issuer_source_aia_unittest/i3.pem",
"data/cert_issuer_source_aia_unittest/root.pem",
"data/cert_issuer_source_aia_unittest/target_file_aia.pem",
"data/cert_issuer_source_aia_unittest/target_file_and_http_aia.pem",
"data/cert_issuer_source_aia_unittest/target_invalid_and_http_aia.pem",
"data/cert_issuer_source_aia_unittest/target_invalid_url_aia.pem",
"data/cert_issuer_source_aia_unittest/target_no_aia.pem",
"data/cert_issuer_source_aia_unittest/target_one_aia.pem",
"data/cert_issuer_source_aia_unittest/target_six_aia.pem",
"data/cert_issuer_source_aia_unittest/target_three_aia.pem",
"data/cert_issuer_source_aia_unittest/target_two_aia.pem",
"data/cert_issuer_source_static_unittest/c1.pem",
"data/cert_issuer_source_static_unittest/c2.pem",
"data/cert_issuer_source_static_unittest/d.pem",
"data/cert_issuer_source_static_unittest/e1.pem",
"data/cert_issuer_source_static_unittest/e2.pem",
"data/cert_issuer_source_static_unittest/i1_1.pem",
"data/cert_issuer_source_static_unittest/i1_2.pem",
"data/cert_issuer_source_static_unittest/i2.pem",
"data/cert_issuer_source_static_unittest/i3_1.pem",
"data/cert_issuer_source_static_unittest/i3_2.pem",
"data/cert_issuer_source_static_unittest/root.pem",
"data/certificate_policies_unittest/anypolicy.pem",
"data/certificate_policies_unittest/anypolicy_with_qualifier.pem",
"data/certificate_policies_unittest/invalid-anypolicy_with_custom_qualifier.pem",
"data/certificate_policies_unittest/invalid-empty.pem",
"data/certificate_policies_unittest/invalid-policy_1_2_3_dupe.pem",
"data/certificate_policies_unittest/invalid-policy_1_2_3_policyinformation_unconsumed_data.pem",
"data/certificate_policies_unittest/invalid-policy_1_2_3_policyqualifierinfo_unconsumed_data.pem",
"data/certificate_policies_unittest/invalid-policy_1_2_3_with_empty_qualifiers_sequence.pem",
"data/certificate_policies_unittest/invalid-policy_identifier_not_oid.pem",
"data/certificate_policies_unittest/policy_1_2_3.pem",
"data/certificate_policies_unittest/policy_1_2_3_and_1_2_4.pem",
"data/certificate_policies_unittest/policy_1_2_3_and_1_2_4_with_qualifiers.pem",
"data/certificate_policies_unittest/policy_1_2_3_with_custom_qualifier.pem",
"data/certificate_policies_unittest/policy_1_2_3_with_qualifier.pem",
"data/crl_unittest/bad_crldp_has_crlissuer.pem",
"data/crl_unittest/bad_fake_critical_crlentryextension.pem",
"data/crl_unittest/bad_fake_critical_extension.pem",
"data/crl_unittest/bad_idp_contains_wrong_uri.pem",
"data/crl_unittest/bad_idp_indirectcrl.pem",
"data/crl_unittest/bad_idp_onlycontainscacerts.pem",
"data/crl_unittest/bad_idp_onlycontainscacerts_no_basic_constraints.pem",
"data/crl_unittest/bad_idp_onlycontainsusercerts.pem",
"data/crl_unittest/bad_idp_uri_and_onlycontainscacerts.pem",
"data/crl_unittest/bad_idp_uri_and_onlycontainsusercerts.pem",
"data/crl_unittest/bad_key_rollover_signature.pem",
"data/crl_unittest/bad_nextupdate_too_old.pem",
"data/crl_unittest/bad_signature.pem",
"data/crl_unittest/bad_thisupdate_in_future.pem",
"data/crl_unittest/bad_thisupdate_too_old.pem",
"data/crl_unittest/bad_wrong_issuer.pem",
"data/crl_unittest/good.pem",
"data/crl_unittest/good_fake_extension.pem",
"data/crl_unittest/good_fake_extension_no_nextupdate.pem",
"data/crl_unittest/good_generalizedtime.pem",
"data/crl_unittest/good_idp_contains_uri.pem",
"data/crl_unittest/good_idp_onlycontainscacerts.pem",
"data/crl_unittest/good_idp_onlycontainsusercerts.pem",
"data/crl_unittest/good_idp_onlycontainsusercerts_no_basic_constraints.pem",
"data/crl_unittest/good_idp_uri_and_onlycontainscacerts.pem",
"data/crl_unittest/good_idp_uri_and_onlycontainsusercerts.pem",
"data/crl_unittest/good_issuer_name_normalization.pem",
"data/crl_unittest/good_issuer_no_keyusage.pem",
"data/crl_unittest/good_key_rollover.pem",
"data/crl_unittest/good_no_crldp.pem",
"data/crl_unittest/good_no_nextupdate.pem",
"data/crl_unittest/good_no_version.pem",
"data/crl_unittest/invalid_garbage_after_crlentryextensions.pem",
"data/crl_unittest/invalid_garbage_after_extensions.pem",
"data/crl_unittest/invalid_garbage_after_nextupdate.pem",
"data/crl_unittest/invalid_garbage_after_revocationdate.pem",
"data/crl_unittest/invalid_garbage_after_revokedcerts.pem",
"data/crl_unittest/invalid_garbage_after_signaturevalue.pem",
"data/crl_unittest/invalid_garbage_after_thisupdate.pem",
"data/crl_unittest/invalid_garbage_crlentry.pem",
"data/crl_unittest/invalid_garbage_issuer_name.pem",
"data/crl_unittest/invalid_garbage_revocationdate.pem",
"data/crl_unittest/invalid_garbage_revoked_serial_number.pem",
"data/crl_unittest/invalid_garbage_signaturealgorithm.pem",
"data/crl_unittest/invalid_garbage_signaturevalue.pem",
"data/crl_unittest/invalid_garbage_tbs_signature_algorithm.pem",
"data/crl_unittest/invalid_garbage_tbscertlist.pem",
"data/crl_unittest/invalid_garbage_thisupdate.pem",
"data/crl_unittest/invalid_garbage_version.pem",
"data/crl_unittest/invalid_idp_dpname_choice_extra_data.pem",
"data/crl_unittest/invalid_idp_empty_sequence.pem",
"data/crl_unittest/invalid_idp_onlycontains_user_and_ca_certs.pem",
"data/crl_unittest/invalid_idp_onlycontainsusercerts_v1_leaf.pem",
"data/crl_unittest/invalid_issuer_keyusage_no_crlsign.pem",
"data/crl_unittest/invalid_key_rollover_issuer_keyusage_no_crlsign.pem",
"data/crl_unittest/invalid_mismatched_signature_algorithm.pem",
"data/crl_unittest/invalid_revoked_empty_sequence.pem",
"data/crl_unittest/invalid_v1_explicit.pem",
"data/crl_unittest/invalid_v1_with_crlentryextension.pem",
"data/crl_unittest/invalid_v1_with_extension.pem",
"data/crl_unittest/invalid_v3.pem",
"data/crl_unittest/revoked.pem",
"data/crl_unittest/revoked_fake_crlentryextension.pem",
"data/crl_unittest/revoked_generalized_revocationdate.pem",
"data/crl_unittest/revoked_key_rollover.pem",
"data/crl_unittest/revoked_no_nextupdate.pem",
"data/embedded_test_server/mock-headers-without-crlf.html",
"data/embedded_test_server/mock-headers-without-crlf.html.mock-http-headers",
"data/filter_unittests/google.br",
"data/filter_unittests/google.txt",
"data/name_constraints_unittest/directoryname-excludeall.pem",
"data/name_constraints_unittest/directoryname-excluded.pem",
"data/name_constraints_unittest/directoryname.pem",
"data/name_constraints_unittest/directoryname_and_dnsname.pem",
"data/name_constraints_unittest/directoryname_and_dnsname_and_ipaddress.pem",
"data/name_constraints_unittest/dnsname-exclude_dot.pem",
"data/name_constraints_unittest/dnsname-excludeall.pem",
"data/name_constraints_unittest/dnsname-excluded.pem",
"data/name_constraints_unittest/dnsname-excluded_with_leading_dot.pem",
"data/name_constraints_unittest/dnsname-permitted_two_dot.pem",
"data/name_constraints_unittest/dnsname-permitted_with_leading_dot.pem",
"data/name_constraints_unittest/dnsname-with_max.pem",
"data/name_constraints_unittest/dnsname-with_min_0.pem",
"data/name_constraints_unittest/dnsname-with_min_0_and_max.pem",
"data/name_constraints_unittest/dnsname-with_min_1.pem",
"data/name_constraints_unittest/dnsname-with_min_1_and_max.pem",
"data/name_constraints_unittest/dnsname.pem",
"data/name_constraints_unittest/dnsname2.pem",
"data/name_constraints_unittest/edipartyname-excluded.pem",
"data/name_constraints_unittest/edipartyname-permitted.pem",
"data/name_constraints_unittest/invalid-empty_excluded_subtree.pem",
"data/name_constraints_unittest/invalid-empty_permitted_subtree.pem",
"data/name_constraints_unittest/invalid-no_subtrees.pem",
"data/name_constraints_unittest/ipaddress-excludeall.pem",
"data/name_constraints_unittest/ipaddress-excluded.pem",
"data/name_constraints_unittest/ipaddress-invalid_addr.pem",
"data/name_constraints_unittest/ipaddress-invalid_mask_not_contiguous_1.pem",
"data/name_constraints_unittest/ipaddress-invalid_mask_not_contiguous_2.pem",
"data/name_constraints_unittest/ipaddress-invalid_mask_not_contiguous_3.pem",
"data/name_constraints_unittest/ipaddress-invalid_mask_not_contiguous_4.pem",
"data/name_constraints_unittest/ipaddress-permit_all.pem",
"data/name_constraints_unittest/ipaddress-permit_prefix1.pem",
"data/name_constraints_unittest/ipaddress-permit_prefix31.pem",
"data/name_constraints_unittest/ipaddress-permit_singlehost.pem",
"data/name_constraints_unittest/ipaddress.pem",
"data/name_constraints_unittest/name-ca.pem",
"data/name_constraints_unittest/name-de.pem",
"data/name_constraints_unittest/name-empty.pem",
"data/name_constraints_unittest/name-jp-tokyo.pem",
"data/name_constraints_unittest/name-jp.pem",
"data/name_constraints_unittest/name-us-arizona-1.1.1.1.pem",
"data/name_constraints_unittest/name-us-arizona-192.168.1.1.pem",
"data/name_constraints_unittest/name-us-arizona-email.pem",
"data/name_constraints_unittest/name-us-arizona-foo.com.pem",
"data/name_constraints_unittest/name-us-arizona-ipv6.pem",
"data/name_constraints_unittest/name-us-arizona-permitted.example.com.pem",
"data/name_constraints_unittest/name-us-arizona.pem",
"data/name_constraints_unittest/name-us-california-192.168.1.1.pem",
"data/name_constraints_unittest/name-us-california-mountain_view.pem",
"data/name_constraints_unittest/name-us-california-permitted.example.com.pem",
"data/name_constraints_unittest/name-us-california.pem",
"data/name_constraints_unittest/name-us.pem",
"data/name_constraints_unittest/othername-excluded.pem",
"data/name_constraints_unittest/othername-permitted.pem",
"data/name_constraints_unittest/registeredid-excluded.pem",
"data/name_constraints_unittest/registeredid-permitted.pem",
"data/name_constraints_unittest/rfc822name-excluded.pem",
"data/name_constraints_unittest/rfc822name-permitted.pem",
"data/name_constraints_unittest/san-directoryname.pem",
"data/name_constraints_unittest/san-dnsname.pem",
"data/name_constraints_unittest/san-edipartyname.pem",
"data/name_constraints_unittest/san-excluded-directoryname.pem",
"data/name_constraints_unittest/san-excluded-dnsname.pem",
"data/name_constraints_unittest/san-excluded-ipaddress.pem",
"data/name_constraints_unittest/san-invalid-empty.pem",
"data/name_constraints_unittest/san-invalid-ipaddress.pem",
"data/name_constraints_unittest/san-ipaddress4.pem",
"data/name_constraints_unittest/san-ipaddress6.pem",
"data/name_constraints_unittest/san-othername.pem",
"data/name_constraints_unittest/san-permitted.pem",
"data/name_constraints_unittest/san-registeredid.pem",
"data/name_constraints_unittest/san-rfc822name.pem",
"data/name_constraints_unittest/san-uri.pem",
"data/name_constraints_unittest/san-x400address.pem",
"data/name_constraints_unittest/uri-excluded.pem",
"data/name_constraints_unittest/uri-permitted.pem",
"data/name_constraints_unittest/x400address-excluded.pem",
"data/name_constraints_unittest/x400address-permitted.pem",
"data/ocsp_unittest/bad_ocsp_type.pem",
"data/ocsp_unittest/bad_signature.pem",
"data/ocsp_unittest/bad_status.pem",
"data/ocsp_unittest/good_response.pem",
"data/ocsp_unittest/good_response_next_update.pem",
"data/ocsp_unittest/good_response_sha256.pem",
"data/ocsp_unittest/has_critical_ct_extension.pem",
"data/ocsp_unittest/has_critical_response_extension.pem",
"data/ocsp_unittest/has_critical_single_extension.pem",
"data/ocsp_unittest/has_extension.pem",
"data/ocsp_unittest/has_single_extension.pem",
"data/ocsp_unittest/has_version.pem",
"data/ocsp_unittest/malformed_request.pem",
"data/ocsp_unittest/missing_response.pem",
"data/ocsp_unittest/multiple_response.pem",
"data/ocsp_unittest/no_response.pem",
"data/ocsp_unittest/ocsp_extra_certs.pem",
"data/ocsp_unittest/ocsp_sign_bad_indirect.pem",
"data/ocsp_unittest/ocsp_sign_direct.pem",
"data/ocsp_unittest/ocsp_sign_indirect.pem",
"data/ocsp_unittest/ocsp_sign_indirect_missing.pem",
"data/ocsp_unittest/other_response.pem",
"data/ocsp_unittest/responder_id.pem",
"data/ocsp_unittest/responder_name.pem",
"data/ocsp_unittest/revoke_response.pem",
"data/ocsp_unittest/revoke_response_reason.pem",
"data/ocsp_unittest/unknown_response.pem",
"data/ov_name_constraints/int-bmp-o1.pem",
"data/ov_name_constraints/int-cn.pem",
"data/ov_name_constraints/int-o1-o2.pem",
"data/ov_name_constraints/int-o1-plus-o2.pem",
"data/ov_name_constraints/int-o2-o1.pem",
"data/ov_name_constraints/int-o3.pem",
"data/ov_name_constraints/leaf-no-o.pem",
"data/ov_name_constraints/leaf-o1-o2.pem",
"data/ov_name_constraints/leaf-o1.pem",
"data/ov_name_constraints/nc-int-exclude-o1.pem",
"data/ov_name_constraints/nc-int-permit-bmp-o1.pem",
"data/ov_name_constraints/nc-int-permit-cn.pem",
"data/ov_name_constraints/nc-int-permit-dns.pem",
"data/ov_name_constraints/nc-int-permit-o1.pe