1# Copyright (c) 2013 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5import("//build/buildflag_header.gni")
6import("//build/config/chromecast_build.gni")
7import("//build/config/compiler/compiler.gni")
8import("//build/config/crypto.gni")
9import("//build/config/features.gni")
10import("//net/features.gni")
11import("//testing/libfuzzer/fuzzer_test.gni")
12import("//testing/test.gni")
13import("//third_party/icu/config.gni")
14import("//third_party/protobuf/proto_library.gni")
15import("//tools/grit/grit_rule.gni")
16import("//url/features.gni")
17
18if (is_android) {
19  import("//build/config/android/config.gni")
20  import("//build/config/android/rules.gni")
21} else if (is_mac) {
22  import("//build/config/mac/mac_sdk.gni")
23}
24
25# The way the cache uses mmap() is inefficient on some Android devices. If
26# this flag is set, we hackily avoid using mmap() in the disk cache. We are
27# pretty confident that mmap-ing the index would not hurt any existing x86
28# android devices, but we cannot be so sure about the variety of ARM devices.
29# So enable it for x86 only for now.
30posix_avoid_mmap = is_android && current_cpu != "x86"
31
32enable_built_in_dns = !is_ios
33
34# Unix sockets are not supported on iOS or NaCl.
35enable_unix_sockets = is_posix && !is_ios && !is_nacl
36
37# x86/x64 cast_shell builds run on regular trybots and can use python runtime
38# and remote test server. ARM cast_shell builds don't have python runtime.
39is_arm_cast_shell_build =
40    is_chromecast && (current_cpu == "arm" || current_cpu == "arm64")
41
42# Python works only on Linux, MacOS and Windows so exclude the others,
43# chromecast, android, fuchsia, ios.
44enable_python_utils =
45    !is_arm_cast_shell_build && !is_android && !is_fuchsia && !is_ios
46
47# Platforms that cannot use python_utils (like Android but see full
48# list above) will instead use a remote server, except for iOS which
49# won't get either.
50use_remote_test_server = !enable_python_utils && !is_ios
51
52# Whether //net should use an external GSSAPI library for implementing HTTP
53# Negotiate authentication. All platforms for which use_kerberos is true should
54# have some external implementation since //net doesn't have intrinsic support
55# for Kerberos. This implementation is an external GSSAPI library on all
56# platforms except on:
57#
58#    Windows : Uses SSPI for Negotiate authentication.
59#
60#    Android : Uses an external authenticator. See
61#              https://www.chromium.org/developers/design-documents/http-authentication/writing-a-spnego-authenticator-for-chrome-on-android
62use_external_gssapi = use_kerberos && !is_android && !is_win
63
64config("net_test_config") {
65  if (use_remote_test_server) {
66    defines = [ "USE_REMOTE_TEST_SERVER" ]
67  }
68}
69
70buildflag_header("buildflags") {
71  header = "net_buildflags.h"
72  flags = [
73    "POSIX_AVOID_MMAP=$posix_avoid_mmap",
74    "DISABLE_FILE_SUPPORT=$disable_file_support",
75    "DISABLE_FTP_SUPPORT=$disable_ftp_support",
76    "ENABLE_MDNS=$enable_mdns",
77    "ENABLE_REPORTING=$enable_reporting",
78    "ENABLE_WEBSOCKETS=$enable_websockets",
79    "INCLUDE_TRANSPORT_SECURITY_STATE_PRELOAD_LIST=$include_transport_security_state_preload_list",
80    "USE_KERBEROS=$use_kerberos",
81    "USE_EXTERNAL_GSSAPI=$use_external_gssapi",
82    "TRIAL_COMPARISON_CERT_VERIFIER_SUPPORTED=$trial_comparison_cert_verifier_supported",
83    "BUILTIN_CERT_VERIFIER_FEATURE_SUPPORTED=$builtin_cert_verifier_feature_supported",
84  ]
85}
86
87config("net_internal_config") {
88  defines = [ "NET_IMPLEMENTATION" ]
89
90  if (use_kerberos && is_android) {
91    include_dirs = [ "/usr/include/kerberosV" ]
92  }
93
94  if (enable_built_in_dns) {
95    defines += [ "ENABLE_BUILT_IN_DNS" ]
96  }
97}
98
99net_configs = [
100  ":net_internal_config",
101  "//build/config:precompiled_headers",
102
103  "//build/config/compiler:wexit_time_destructors",
104]
105
106if (is_linux && !is_bsd) {
107  net_configs += [ "//build/config/linux:libresolv" ]
108}
109
110# Reset sources_assignment_filter for the BUILD.gn file to prevent
111# regression during the migration of Chromium away from the feature.
112# See docs/no_sources_assignment_filter.md for more information.
113# TODO(crbug.com/1018739): Remove this when migration is done.
114set_sources_assignment_filter([])
115
116source_set("constants") {
117  sources = [ "base/trace_constants.h" ]
118  deps = [ "//base" ]
119}
120
121component("net") {
122  sources = [
123    "base/address_family.cc",
124    "base/address_family.h",
125    "base/address_list.cc",
126    "base/address_list.h",
127    "base/auth.cc",
128    "base/auth.h",
129    "base/completion_once_callback.h",
130    "base/completion_repeating_callback.h",
131    "base/datagram_buffer.cc",
132    "base/datagram_buffer.h",
133    "base/escape.cc",
134    "base/escape.h",
135    "base/features.cc",
136    "base/features.h",
137    "base/hash_value.cc",
138    "base/hash_value.h",
139    "base/host_port_pair.cc",
140    "base/host_port_pair.h",
141    "base/interval.h",
142    "base/interval_set.h",
143    "base/io_buffer.cc",
144    "base/io_buffer.h",
145    "base/ip_address.cc",
146    "base/ip_address.h",
147    "base/ip_endpoint.cc",
148    "base/ip_endpoint.h",
149    "base/load_timing_info.cc",
150    "base/load_timing_info.h",
151    "base/lookup_string_in_fixed_set.cc",
152    "base/lookup_string_in_fixed_set.h",
153    "base/net_error_details.h",
154    "base/net_error_list.h",
155    "base/net_errors.cc",
156    "base/net_errors.h",
157    "base/net_module.cc",
158    "base/net_module.h",
159    "base/net_string_util.h",
160    "base/network_interfaces.cc",
161    "base/network_interfaces.h",
162    "base/parse_number.cc",
163    "base/parse_number.h",
164    "base/port_util.cc",
165    "base/port_util.h",
166    "base/privacy_mode.h",
167    "base/rand_callback.h",
168    "base/registry_controlled_domains/registry_controlled_domain.cc",
169    "base/registry_controlled_domains/registry_controlled_domain.h",
170    "base/sockaddr_storage.cc",
171    "base/sockaddr_storage.h",
172    "base/sys_addrinfo.h",
173    "base/url_util.cc",
174    "base/url_util.h",
175    "cert/asn1_util.cc",
176    "cert/asn1_util.h",
177    "cert/cert_database.cc",
178    "cert/cert_database.h",
179    "cert/cert_status_flags.cc",
180    "cert/cert_status_flags.h",
181    "cert/cert_status_flags_list.h",
182    "cert/cert_verifier.cc",
183    "cert/cert_verifier.h",
184    "cert/cert_verify_result.cc",
185    "cert/cert_verify_result.h",
186    "cert/client_cert_verifier.h",
187    "cert/crl_set.cc",
188    "cert/crl_set.h",
189    "cert/ct_policy_enforcer.cc",
190    "cert/ct_policy_enforcer.h",
191    "cert/ct_policy_status.h",
192    "cert/ct_verifier.h",
193    "cert/ct_verify_result.cc",
194    "cert/ct_verify_result.h",
195    "cert/do_nothing_ct_verifier.cc",
196    "cert/do_nothing_ct_verifier.h",
197    "cert/internal/cert_error_id.cc",
198    "cert/internal/cert_error_id.h",
199    "cert/internal/cert_error_params.cc",
200    "cert/internal/cert_error_params.h",
201    "cert/internal/cert_errors.cc",
202    "cert/internal/cert_errors.h",
203    "cert/internal/cert_issuer_source.h",
204    "cert/internal/cert_issuer_source_aia.cc",
205    "cert/internal/cert_issuer_source_aia.h",
206    "cert/internal/cert_issuer_source_static.cc",
207    "cert/internal/cert_issuer_source_static.h",
208    "cert/internal/certificate_policies.cc",
209    "cert/internal/certificate_policies.h",
210    "cert/internal/common_cert_errors.cc",
211    "cert/internal/common_cert_errors.h",
212    "cert/internal/crl.cc",
213    "cert/internal/crl.h",
214    "cert/internal/extended_key_usage.cc",
215    "cert/internal/extended_key_usage.h",
216    "cert/internal/general_names.cc",
217    "cert/internal/general_names.h",
218    "cert/internal/name_constraints.cc",
219    "cert/internal/name_constraints.h",
220    "cert/internal/ocsp.cc",
221    "cert/internal/ocsp.h",
222    "cert/internal/parse_certificate.cc",
223    "cert/internal/parse_certificate.h",
224    "cert/internal/parse_name.cc",
225    "cert/internal/parse_name.h",
226    "cert/internal/parsed_certificate.cc",
227    "cert/internal/parsed_certificate.h",
228    "cert/internal/path_builder.cc",
229    "cert/internal/path_builder.h",
230    "cert/internal/revocation_checker.cc",
231    "cert/internal/revocation_checker.h",
232    "cert/internal/revocation_util.cc",
233    "cert/internal/revocation_util.h",
234    "cert/internal/signature_algorithm.cc",
235    "cert/internal/signature_algorithm.h",
236    "cert/internal/simple_path_builder_delegate.cc",
237    "cert/internal/simple_path_builder_delegate.h",
238    "cert/internal/trust_store.cc",
239    "cert/internal/trust_store.h",
240    "cert/internal/trust_store_collection.cc",
241    "cert/internal/trust_store_collection.h",
242    "cert/internal/trust_store_in_memory.cc",
243    "cert/internal/trust_store_in_memory.h",
244    "cert/internal/verify_certificate_chain.cc",
245    "cert/internal/verify_certificate_chain.h",
246    "cert/internal/verify_name_match.cc",
247    "cert/internal/verify_name_match.h",
248    "cert/internal/verify_signed_data.cc",
249    "cert/internal/verify_signed_data.h",
250    "cert/ocsp_revocation_status.h",
251    "cert/ocsp_verify_result.cc",
252    "cert/ocsp_verify_result.h",
253    "cert/pem.cc",
254    "cert/pem.h",
255    "cert/sct_status_flags.cc",
256    "cert/sct_status_flags.h",
257    "cert/signed_certificate_timestamp.cc",
258    "cert/signed_certificate_timestamp.h",
259    "cert/signed_certificate_timestamp_and_status.cc",
260    "cert/signed_certificate_timestamp_and_status.h",
261    "cert/signed_tree_head.cc",
262    "cert/signed_tree_head.h",
263    "cert/symantec_certs.cc",
264    "cert/symantec_certs.h",
265    "cert/x509_cert_types.cc",
266    "cert/x509_cert_types.h",
267    "cert/x509_certificate.cc",
268    "cert/x509_certificate.h",
269    "cert/x509_certificate_net_log_param.cc",
270    "cert/x509_certificate_net_log_param.h",
271    "cert/x509_util.cc",
272    "cert/x509_util.h",
273    "der/encode_values.cc",
274    "der/encode_values.h",
275    "der/input.cc",
276    "der/input.h",
277    "der/parse_values.cc",
278    "der/parse_values.h",
279    "der/parser.cc",
280    "der/parser.h",
281    "der/tag.cc",
282    "der/tag.h",
283    "http/hsts_info.h",
284    "http/http_auth_challenge_tokenizer.cc",
285    "http/http_auth_challenge_tokenizer.h",
286    "http/http_auth_scheme.cc",
287    "http/http_auth_scheme.h",
288    "http/http_byte_range.cc",
289    "http/http_byte_range.h",
290    "http/http_log_util.cc",
291    "http/http_log_util.h",
292    "http/http_raw_request_headers.cc",
293    "http/http_raw_request_headers.h",
294    "http/http_request_headers.cc",
295    "http/http_request_headers.h",
296    "http/http_response_headers.cc",
297    "http/http_response_headers.h",
298    "http/http_response_info.cc",
299    "http/http_response_info.h",
300    "http/http_security_headers.cc",
301    "http/http_security_headers.h",
302    "http/http_status_code_list.h",
303    "http/http_util.cc",
304    "http/http_util.h",
305    "http/http_vary_data.cc",
306    "http/http_vary_data.h",
307    "http/structured_headers.cc",
308    "http/structured_headers.h",
309    "http/transport_security_state.h",
310    "http/transport_security_state_source.cc",
311    "http/transport_security_state_source.h",
312    "log/net_log.cc",
313    "log/net_log.h",
314    "log/net_log_capture_mode.cc",
315    "log/net_log_capture_mode.h",
316    "log/net_log_entry.cc",
317    "log/net_log_entry.h",
318    "log/net_log_event_type.h",
319    "log/net_log_event_type_list.h",
320    "log/net_log_source.cc",
321    "log/net_log_source.h",
322    "log/net_log_source_type.h",
323    "log/net_log_source_type_list.h",
324    "log/net_log_values.cc",
325    "log/net_log_values.h",
326    "log/net_log_with_source.cc",
327    "log/net_log_with_source.h",
328    "socket/client_socket_handle.cc",
329    "socket/client_socket_handle.h",
330    "socket/connect_job.cc",
331    "socket/connect_job.h",
332    "socket/connection_attempts.h",
333    "socket/next_proto.cc",
334    "socket/next_proto.h",
335    "socket/socket.cc",
336    "socket/socket.h",
337    "socket/socket_bio_adapter.cc",
338    "socket/socket_bio_adapter.h",
339    "socket/socket_performance_watcher.h",
340    "socket/socket_performance_watcher_factory.h",
341    "socket/ssl_client_socket.cc",
342    "socket/ssl_client_socket.h",
343    "socket/ssl_client_socket_impl.cc",
344    "socket/ssl_client_socket_impl.h",
345    "socket/ssl_socket.h",
346    "socket/stream_socket.cc",
347    "socket/stream_socket.h",
348    "ssl/client_cert_identity.cc",
349    "ssl/client_cert_identity.h",
350    "ssl/openssl_ssl_util.cc",
351    "ssl/openssl_ssl_util.h",
352    "ssl/ssl_cert_request_info.cc",
353    "ssl/ssl_cert_request_info.h",
354    "ssl/ssl_cipher_suite_names.cc",
355    "ssl/ssl_cipher_suite_names.h",
356    "ssl/ssl_client_auth_cache.cc",
357    "ssl/ssl_client_auth_cache.h",
358    "ssl/ssl_client_cert_type.h",
359    "ssl/ssl_client_session_cache.cc",
360    "ssl/ssl_client_session_cache.h",
361    "ssl/ssl_config.cc",
362    "ssl/ssl_config.h",
363    "ssl/ssl_config_service.cc",
364    "ssl/ssl_config_service.h",
365    "ssl/ssl_connection_status_flags.h",
366    "ssl/ssl_handshake_details.h",
367    "ssl/ssl_info.cc",
368    "ssl/ssl_info.h",
369    "ssl/ssl_key_logger.h",
370    "ssl/ssl_legacy_crypto_fallback.h",
371    "ssl/ssl_private_key.cc",
372    "ssl/ssl_private_key.h",
373    "ssl/ssl_server_config.cc",
374    "ssl/ssl_server_config.h",
375    "third_party/uri_template/uri_template.cc",
376    "third_party/uri_template/uri_template.h",
377  ]
378
379  if (is_posix || is_fuchsia) {
380    sources += [ "base/net_errors_posix.cc" ]
381  }
382
383  defines = []
384  if (disable_brotli_filter || is_nacl) {
385    defines += [ "NET_DISABLE_BROTLI" ]
386  }
387
388  deps = [
389    ":net_deps",
390    "//net/http:transport_security_state_generated_files",
391  ]
392
393  public_deps = [
394    ":net_export_header",
395    ":net_public_deps",
396    "//net/dns",
397    "//net/dns:dns_client",
398    "//net/dns:host_resolver",
399    "//net/dns:host_resolver_manager",
400    "//net/dns:mdns_client",
401    "//net/dns/public",
402    "//net/third_party/quiche",
403  ]
404
405  allow_circular_includes_from = [
406    "//net/dns",
407    "//net/dns:dns_client",
408    "//net/dns:host_resolver",
409    "//net/dns:host_resolver_manager",
410    "//net/dns:mdns_client",
411    "//net/dns/public",
412    "//net/http:transport_security_state_generated_files",
413    "//net/third_party/quiche",
414  ]
415
416  if (is_nacl) {
417    sources += [ "base/network_interfaces_nacl.cc" ]
418  }
419
420  if (!is_nacl) {
421    sources += [
422      "base/backoff_entry.cc",
423      "base/backoff_entry.h",
424      "base/backoff_entry_serializer.cc",
425      "base/backoff_entry_serializer.h",
426      "base/cache_metrics.cc",
427      "base/cache_metrics.h",
428      "base/cache_type.h",
429      "base/chunked_upload_data_stream.cc",
430      "base/chunked_upload_data_stream.h",
431      "base/data_url.cc",
432      "base/data_url.h",
433      "base/elements_upload_data_stream.cc",
434      "base/elements_upload_data_stream.h",
435      "base/expiring_cache.h",
436      "base/file_stream.cc",
437      "base/file_stream.h",
438      "base/file_stream_context.cc",
439      "base/file_stream_context.h",
440      "base/filename_util.cc",
441      "base/filename_util.h",
442      "base/filename_util_internal.cc",
443      "base/filename_util_internal.h",
444      "base/hex_utils.cc",
445      "base/hex_utils.h",
446      "base/host_mapping_rules.cc",
447      "base/host_mapping_rules.h",
448      "base/http_user_agent_settings.h",
449      "base/ip_pattern.cc",
450      "base/ip_pattern.h",
451      "base/isolation_info.cc",
452      "base/isolation_info.h",
453      "base/load_flags.h",
454      "base/load_flags_list.h",
455      "base/load_states.h",
456      "base/load_states_list.h",
457      "base/logging_network_change_observer.cc",
458      "base/logging_network_change_observer.h",
459      "base/mime_sniffer.cc",
460      "base/mime_sniffer.h",
461      "base/mime_util.cc",
462      "base/mime_util.h",
463      "base/net_info_source_list.h",
464      "base/network_activity_monitor.cc",
465      "base/network_activity_monitor.h",
466      "base/network_change_notifier.cc",
467      "base/network_change_notifier.h",
468      "base/network_change_notifier_factory.h",
469      "base/network_delegate.cc",
470      "base/network_delegate.h",
471      "base/network_delegate_impl.cc",
472      "base/network_delegate_impl.h",
473      "base/network_isolation_key.cc",
474      "base/network_isolation_key.h",
475      "base/platform_mime_util.h",
476      "base/prioritized_dispatcher.cc",
477      "base/prioritized_dispatcher.h",
478      "base/prioritized_task_runner.cc",
479      "base/prioritized_task_runner.h",
480      "base/priority_queue.h",
481      "base/proxy_delegate.h",
482      "base/proxy_server.cc",
483      "base/proxy_server.h",
484      "base/request_priority.cc",
485      "base/request_priority.h",
486      "base/scheme_host_port_matcher.cc",
487      "base/scheme_host_port_matcher.h",
488      "base/scheme_host_port_matcher_result.h",
489      "base/scheme_host_port_matcher_rule.cc",
490      "base/scheme_host_port_matcher_rule.h",
491      "base/test_data_stream.cc",
492      "base/test_data_stream.h",
493      "base/upload_bytes_element_reader.cc",
494      "base/upload_bytes_element_reader.h",
495      "base/upload_data_stream.cc",
496      "base/upload_data_stream.h",
497      "base/upload_element_reader.cc",
498      "base/upload_element_reader.h",
499      "base/upload_file_element_reader.cc",
500      "base/upload_file_element_reader.h",
501      "base/upload_progress.h",
502      "cert/caching_cert_verifier.cc",
503      "cert/caching_cert_verifier.h",
504      "cert/cert_net_fetcher.h",
505      "cert/cert_verify_proc.cc",
506      "cert/cert_verify_proc.h",
507      "cert/cert_verify_proc_builtin.cc",
508      "cert/cert_verify_proc_builtin.h",
509      "cert/coalescing_cert_verifier.cc",
510      "cert/coalescing_cert_verifier.h",
511      "cert/ct_log_response_parser.cc",
512      "cert/ct_log_response_parser.h",
513      "cert/ct_log_verifier.cc",
514      "cert/ct_log_verifier.h",
515      "cert/ct_log_verifier_util.cc",
516      "cert/ct_log_verifier_util.h",
517      "cert/ct_objects_extractor.cc",
518      "cert/ct_objects_extractor.h",
519      "cert/ct_sct_to_string.cc",
520      "cert/ct_sct_to_string.h",
521      "cert/ct_serialization.cc",
522      "cert/ct_serialization.h",
523      "cert/ct_signed_certificate_timestamp_log_param.cc",
524      "cert/ct_signed_certificate_timestamp_log_param.h",
525      "cert/ev_root_ca_metadata.cc",
526      "cert/ev_root_ca_metadata.h",
527      "cert/internal/system_trust_store.cc",
528      "cert/internal/system_trust_store.h",
529      "cert/jwk_serializer.cc",
530      "cert/jwk_serializer.h",
531      "cert/known_roots.cc",
532      "cert/known_roots.h",
533      "cert/merkle_audit_proof.cc",
534      "cert/merkle_audit_proof.h",
535      "cert/merkle_consistency_proof.cc",
536      "cert/merkle_consistency_proof.h",
537      "cert/merkle_tree_leaf.cc",
538      "cert/merkle_tree_leaf.h",
539      "cert/multi_log_ct_verifier.cc",
540      "cert/multi_log_ct_verifier.h",
541      "cert/multi_threaded_cert_verifier.cc",
542      "cert/multi_threaded_cert_verifier.h",
543      "cert/root_cert_list_generated.h",
544      "cert/test_root_certs.cc",
545      "cert/test_root_certs.h",
546      "cert_net/cert_net_fetcher_url_request.cc",
547      "cert_net/cert_net_fetcher_url_request.h",
548      "cookies/canonical_cookie.cc",
549      "cookies/canonical_cookie.h",
550      "cookies/cookie_access_delegate.cc",
551      "cookies/cookie_access_delegate.h",
552      "cookies/cookie_change_dispatcher.cc",
553      "cookies/cookie_change_dispatcher.h",
554      "cookies/cookie_constants.cc",
555      "cookies/cookie_constants.h",
556      "cookies/cookie_deletion_info.cc",
557      "cookies/cookie_deletion_info.h",
558      "cookies/cookie_monster.cc",
559      "cookies/cookie_monster.h",
560      "cookies/cookie_monster_change_dispatcher.cc",
561      "cookies/cookie_monster_change_dispatcher.h",
562      "cookies/cookie_monster_netlog_params.cc",
563      "cookies/cookie_monster_netlog_params.h",
564      "cookies/cookie_options.cc",
565      "cookies/cookie_options.h",
566      "cookies/cookie_store.cc",
567      "cookies/cookie_store.h",
568      "cookies/cookie_util.cc",
569      "cookies/cookie_util.h",
570      "cookies/parsed_cookie.cc",
571      "cookies/parsed_cookie.h",
572      "cookies/site_for_cookies.cc",
573      "cookies/site_for_cookies.h",
574      "cookies/static_cookie_policy.cc",
575      "cookies/static_cookie_policy.h",
576      "disk_cache/backend_cleanup_tracker.cc",
577      "disk_cache/backend_cleanup_tracker.h",
578      "disk_cache/blockfile/addr.cc",
579      "disk_cache/blockfile/addr.h",
580      "disk_cache/blockfile/backend_impl.cc",
581      "disk_cache/blockfile/backend_impl.h",
582      "disk_cache/blockfile/bitmap.cc",
583      "disk_cache/blockfile/bitmap.h",
584      "disk_cache/blockfile/block_files.cc",
585      "disk_cache/blockfile/block_files.h",
586      "disk_cache/blockfile/disk_format.cc",
587      "disk_cache/blockfile/disk_format.h",
588      "disk_cache/blockfile/disk_format_base.h",
589      "disk_cache/blockfile/entry_impl.cc",
590      "disk_cache/blockfile/entry_impl.h",
591      "disk_cache/blockfile/errors.h",
592      "disk_cache/blockfile/eviction.cc",
593      "disk_cache/blockfile/eviction.h",
594      "disk_cache/blockfile/experiments.h",
595      "disk_cache/blockfile/file.cc",
596      "disk_cache/blockfile/file.h",
597      "disk_cache/blockfile/file_block.h",
598      "disk_cache/blockfile/file_lock.cc",
599      "disk_cache/blockfile/file_lock.h",
600      "disk_cache/blockfile/histogram_macros.h",
601      "disk_cache/blockfile/in_flight_backend_io.cc",
602      "disk_cache/blockfile/in_flight_backend_io.h",
603      "disk_cache/blockfile/in_flight_io.cc",
604      "disk_cache/blockfile/in_flight_io.h",
605      "disk_cache/blockfile/mapped_file.cc",
606      "disk_cache/blockfile/mapped_file.h",
607      "disk_cache/blockfile/rankings.cc",
608      "disk_cache/blockfile/rankings.h",
609      "disk_cache/blockfile/sparse_control.cc",
610      "disk_cache/blockfile/sparse_control.h",
611      "disk_cache/blockfile/stats.cc",
612      "disk_cache/blockfile/stats.h",
613      "disk_cache/blockfile/storage_block-inl.h",
614      "disk_cache/blockfile/storage_block.h",
615      "disk_cache/blockfile/stress_support.h",
616      "disk_cache/cache_util.cc",
617      "disk_cache/cache_util.h",
618      "disk_cache/disk_cache.cc",
619      "disk_cache/disk_cache.h",
620      "disk_cache/memory/mem_backend_impl.cc",
621      "disk_cache/memory/mem_backend_impl.h",
622      "disk_cache/memory/mem_entry_impl.cc",
623      "disk_cache/memory/mem_entry_impl.h",
624      "disk_cache/net_log_parameters.cc",
625      "disk_cache/net_log_parameters.h",
626      "disk_cache/simple/post_doom_waiter.cc",
627      "disk_cache/simple/post_doom_waiter.h",
628      "disk_cache/simple/simple_backend_impl.cc",
629      "disk_cache/simple/simple_backend_impl.h",
630      "disk_cache/simple/simple_backend_version.h",
631      "disk_cache/simple/simple_entry_format.cc",
632      "disk_cache/simple/simple_entry_format.h",
633      "disk_cache/simple/simple_entry_format_history.h",
634      "disk_cache/simple/simple_entry_impl.cc",
635      "disk_cache/simple/simple_entry_impl.h",
636      "disk_cache/simple/simple_entry_operation.cc",
637      "disk_cache/simple/simple_entry_operation.h",
638      "disk_cache/simple/simple_file_tracker.cc",
639      "disk_cache/simple/simple_file_tracker.h",
640      "disk_cache/simple/simple_histogram_macros.h",
641      "disk_cache/simple/simple_index.cc",
642      "disk_cache/simple/simple_index.h",
643      "disk_cache/simple/simple_index_delegate.h",
644      "disk_cache/simple/simple_index_file.cc",
645      "disk_cache/simple/simple_index_file.h",
646      "disk_cache/simple/simple_net_log_parameters.cc",
647      "disk_cache/simple/simple_net_log_parameters.h",
648      "disk_cache/simple/simple_synchronous_entry.cc",
649      "disk_cache/simple/simple_synchronous_entry.h",
650      "disk_cache/simple/simple_util.cc",
651      "disk_cache/simple/simple_util.h",
652      "disk_cache/simple/simple_version_upgrade.cc",
653      "disk_cache/simple/simple_version_upgrade.h",
654      "filter/filter_source_stream.cc",
655      "filter/filter_source_stream.h",
656      "filter/gzip_header.cc",
657      "filter/gzip_header.h",
658      "filter/gzip_source_stream.cc",
659      "filter/gzip_source_stream.h",
660      "filter/source_stream.cc",
661      "filter/source_stream.h",
662      "filter/source_stream_type_list.h",
663      "http/alternative_service.cc",
664      "http/alternative_service.h",
665      "http/bidirectional_stream.cc",
666      "http/bidirectional_stream.h",
667      "http/bidirectional_stream_impl.cc",
668      "http/bidirectional_stream_impl.h",
669      "http/bidirectional_stream_request_info.cc",
670      "http/bidirectional_stream_request_info.h",
671      "http/broken_alternative_services.cc",
672      "http/broken_alternative_services.h",
673      "http/failing_http_transaction_factory.cc",
674      "http/failing_http_transaction_factory.h",
675      "http/http_auth.cc",
676      "http/http_auth.h",
677      "http/http_auth_cache.cc",
678      "http/http_auth_cache.h",
679      "http/http_auth_controller.cc",
680      "http/http_auth_controller.h",
681      "http/http_auth_filter.cc",
682      "http/http_auth_filter.h",
683      "http/http_auth_handler.cc",
684      "http/http_auth_handler.h",
685      "http/http_auth_handler_basic.cc",
686      "http/http_auth_handler_basic.h",
687      "http/http_auth_handler_digest.cc",
688      "http/http_auth_handler_digest.h",
689      "http/http_auth_handler_factory.cc",
690      "http/http_auth_handler_factory.h",
691      "http/http_auth_handler_ntlm.cc",
692      "http/http_auth_handler_ntlm.h",
693      "http/http_auth_mechanism.h",
694      "http/http_auth_multi_round_parse.cc",
695      "http/http_auth_multi_round_parse.h",
696      "http/http_auth_preferences.cc",
697      "http/http_auth_preferences.h",
698      "http/http_basic_state.cc",
699      "http/http_basic_state.h",
700      "http/http_basic_stream.cc",
701      "http/http_basic_stream.h",
702      "http/http_cache.cc",
703      "http/http_cache.h",
704      "http/http_cache_lookup_manager.cc",
705      "http/http_cache_lookup_manager.h",
706      "http/http_cache_transaction.cc",
707      "http/http_cache_transaction.h",
708      "http/http_cache_writers.cc",
709      "http/http_cache_writers.h",
710      "http/http_chunked_decoder.cc",
711      "http/http_chunked_decoder.h",
712      "http/http_content_disposition.cc",
713      "http/http_content_disposition.h",
714      "http/http_network_layer.cc",
715      "http/http_network_layer.h",
716      "http/http_network_session.cc",
717      "http/http_network_session.h",
718      "http/http_network_session_peer.cc",
719      "http/http_network_session_peer.h",
720      "http/http_network_transaction.cc",
721      "http/http_network_transaction.h",
722      "http/http_proxy_client_socket.cc",
723      "http/http_proxy_client_socket.h",
724      "http/http_proxy_connect_job.cc",
725      "http/http_proxy_connect_job.h",
726      "http/http_request_info.cc",
727      "http/http_request_info.h",
728      "http/http_response_body_drainer.cc",
729      "http/http_response_body_drainer.h",
730      "http/http_server_properties.cc",
731      "http/http_server_properties.h",
732      "http/http_server_properties_manager.cc",
733      "http/http_server_properties_manager.h",
734      "http/http_status_code.cc",
735      "http/http_status_code.h",
736      "http/http_stream.h",
737      "http/http_stream_factory.cc",
738      "http/http_stream_factory.h",
739      "http/http_stream_factory_job.cc",
740      "http/http_stream_factory_job.h",
741      "http/http_stream_factory_job_controller.cc",
742      "http/http_stream_factory_job_controller.h",
743      "http/http_stream_parser.cc",
744      "http/http_stream_parser.h",
745      "http/http_stream_request.cc",
746      "http/http_stream_request.h",
747      "http/http_transaction.h",
748      "http/http_transaction_factory.h",
749      "http/http_version.h",
750      "http/partial_data.cc",
751      "http/partial_data.h",
752      "http/proxy_client_socket.cc",
753      "http/proxy_client_socket.h",
754      "http/proxy_fallback.cc",
755      "http/proxy_fallback.h",
756      "http/transport_security_persister.cc",
757      "http/transport_security_persister.h",
758      "http/url_security_manager.cc",
759      "http/url_security_manager.h",
760      "http/webfonts_histogram.cc",
761      "http/webfonts_histogram.h",
762      "http2/platform/impl/http2_bug_tracker_impl.h",
763      "http2/platform/impl/http2_containers_impl.h",
764      "http2/platform/impl/http2_estimate_memory_usage_impl.h",
765      "http2/platform/impl/http2_flag_utils_impl.h",
766      "http2/platform/impl/http2_flags_impl.cc",
767      "http2/platform/impl/http2_flags_impl.h",
768      "http2/platform/impl/http2_logging_impl.h",
769      "http2/platform/impl/http2_macros_impl.h",
770      "http2/platform/impl/http2_string_utils_impl.h",
771      "log/file_net_log_observer.cc",
772      "log/file_net_log_observer.h",
773      "log/net_log_util.cc",
774      "log/net_log_util.h",
775      "log/trace_net_log_observer.cc",
776      "log/trace_net_log_observer.h",
777      "nqe/cached_network_quality.cc",
778      "nqe/cached_network_quality.h",
779      "nqe/effective_connection_type.cc",
780      "nqe/effective_connection_type.h",
781      "nqe/effective_connection_type_observer.h",
782      "nqe/event_creator.cc",
783      "nqe/event_creator.h",
784      "nqe/network_congestion_analyzer.cc",
785      "nqe/network_congestion_analyzer.h",
786      "nqe/network_id.cc",
787      "nqe/network_id.h",
788      "nqe/network_qualities_prefs_manager.cc",
789      "nqe/network_qualities_prefs_manager.h",
790      "nqe/network_quality.cc",
791      "nqe/network_quality.h",
792      "nqe/network_quality_estimator.cc",
793      "nqe/network_quality_estimator.h",
794      "nqe/network_quality_estimator_params.cc",
795      "nqe/network_quality_estimator_params.h",
796      "nqe/network_quality_estimator_util.cc",
797      "nqe/network_quality_estimator_util.h",
798      "nqe/network_quality_observation.cc",
799      "nqe/network_quality_observation.h",
800      "nqe/network_quality_observation_source.h",
801      "nqe/network_quality_store.cc",
802      "nqe/network_quality_store.h",
803      "nqe/observation_buffer.cc",
804      "nqe/observation_buffer.h",
805      "nqe/peer_to_peer_connections_count_observer.h",
806      "nqe/rtt_throughput_estimates_observer.h",
807      "nqe/socket_watcher.cc",
808      "nqe/socket_watcher.h",
809      "nqe/socket_watcher_factory.cc",
810      "nqe/socket_watcher_factory.h",
811      "nqe/throughput_analyzer.cc",
812      "nqe/throughput_analyzer.h",
813      "nqe/weighted_observation.h",
814      "proxy_resolution/configured_proxy_resolution_request.cc",
815      "proxy_resolution/configured_proxy_resolution_request.h",
816      "proxy_resolution/configured_proxy_resolution_service.cc",
817      "proxy_resolution/configured_proxy_resolution_service.h",
818      "proxy_resolution/dhcp_pac_file_fetcher.cc",
819      "proxy_resolution/dhcp_pac_file_fetcher.h",
820      "proxy_resolution/multi_threaded_proxy_resolver.cc",
821      "proxy_resolution/multi_threaded_proxy_resolver.h",
822      "proxy_resolution/network_delegate_error_observer.cc",
823      "proxy_resolution/network_delegate_error_observer.h",
824      "proxy_resolution/pac_file_data.cc",
825      "proxy_resolution/pac_file_data.h",
826      "proxy_resolution/pac_file_decider.cc",
827      "proxy_resolution/pac_file_decider.h",
828      "proxy_resolution/pac_file_fetcher.h",
829      "proxy_resolution/pac_file_fetcher_impl.cc",
830      "proxy_resolution/pac_file_fetcher_impl.h",
831      "proxy_resolution/polling_proxy_config_service.cc",
832      "proxy_resolution/polling_proxy_config_service.h",
833      "proxy_resolution/proxy_bypass_rules.cc",
834      "proxy_resolution/proxy_bypass_rules.h",
835      "proxy_resolution/proxy_config.cc",
836      "proxy_resolution/proxy_config.h",
837      "proxy_resolution/proxy_config_service.h",
838      "proxy_resolution/proxy_config_service_fixed.cc",
839      "proxy_resolution/proxy_config_service_fixed.h",
840      "proxy_resolution/proxy_config_with_annotation.cc",
841      "proxy_resolution/proxy_config_with_annotation.h",
842      "proxy_resolution/proxy_info.cc",
843      "proxy_resolution/proxy_info.h",
844      "proxy_resolution/proxy_list.cc",
845      "proxy_resolution/proxy_list.h",
846      "proxy_resolution/proxy_resolution_request.h",
847      "proxy_resolution/proxy_resolution_service.h",
848      "proxy_resolution/proxy_resolve_dns_operation.h",
849      "proxy_resolution/proxy_resolver.h",
850      "proxy_resolution/proxy_resolver_error_observer.h",
851      "proxy_resolution/proxy_resolver_factory.cc",
852      "proxy_resolution/proxy_resolver_factory.h",
853      "proxy_resolution/proxy_retry_info.h",
854      "quic/address_utils.h",
855      "quic/bidirectional_stream_quic_impl.cc",
856      "quic/bidirectional_stream_quic_impl.h",
857      "quic/crypto/proof_source_chromium.cc",
858      "quic/crypto/proof_source_chromium.h",
859      "quic/crypto/proof_verifier_chromium.cc",
860      "quic/crypto/proof_verifier_chromium.h",
861      "quic/network_connection.cc",
862      "quic/network_connection.h",
863      "quic/platform/impl/quic_aligned_impl.h",
864      "quic/platform/impl/quic_bug_tracker_impl.h",
865      "quic/platform/impl/quic_cert_utils_impl.h",
866      "quic/platform/impl/quic_chromium_clock.cc",
867      "quic/platform/impl/quic_chromium_clock.h",
868      "quic/platform/impl/quic_client_stats_impl.h",
869      "quic/platform/impl/quic_containers_impl.h",
870      "quic/platform/impl/quic_error_code_wrappers_impl.h",
871      "quic/platform/impl/quic_estimate_memory_usage_impl.h",
872      "quic/platform/impl/quic_export_impl.h",
873      "quic/platform/impl/quic_fallthrough_impl.h",
874      "quic/platform/impl/quic_file_utils_impl.h",
875      "quic/platform/impl/quic_flag_utils_impl.h",
876      "quic/platform/impl/quic_flags_impl.cc",
877      "quic/platform/impl/quic_flags_impl.h",
878      "quic/platform/impl/quic_hostname_utils_impl.cc",
879      "quic/platform/impl/quic_hostname_utils_impl.h",
880      "quic/platform/impl/quic_iovec_impl.h",
881      "quic/platform/impl/quic_macros_impl.h",
882      "quic/platform/impl/quic_map_util_impl.h",
883      "quic/platform/impl/quic_mem_slice_impl.cc",
884      "quic/platform/impl/quic_mem_slice_impl.h",
885      "quic/platform/impl/quic_mem_slice_span_impl.cc",
886      "quic/platform/impl/quic_mem_slice_span_impl.h",
887      "quic/platform/impl/quic_mem_slice_storage_impl.cc",
888      "quic/platform/impl/quic_mem_slice_storage_impl.h",
889      "quic/platform/impl/quic_mutex_impl.cc",
890      "quic/platform/impl/quic_mutex_impl.h",
891      "quic/platform/impl/quic_pcc_sender_impl.h",
892      "quic/platform/impl/quic_prefetch_impl.h",
893      "quic/platform/impl/quic_ptr_util_impl.h",
894      "quic/platform/impl/quic_reference_counted_impl.h",
895      "quic/platform/impl/quic_server_stats_impl.h",
896      "quic/platform/impl/quic_sleep_impl.h",
897      "quic/platform/impl/quic_socket_address_impl.cc",
898      "quic/platform/impl/quic_socket_address_impl.h",
899      "quic/platform/impl/quic_stack_trace_impl.h",
900      "quic/properties_based_quic_server_info.cc",
901      "quic/properties_based_quic_server_info.h",
902      "quic/quic_address_mismatch.cc",
903      "quic/quic_address_mismatch.h",
904      "quic/quic_chromium_alarm_factory.cc",
905      "quic/quic_chromium_alarm_factory.h",
906      "quic/quic_chromium_client_session.cc",
907      "quic/quic_chromium_client_session.h",
908      "quic/quic_chromium_client_stream.cc",
909      "quic/quic_chromium_client_stream.h",
910      "quic/quic_chromium_connection_helper.cc",
911      "quic/quic_chromium_connection_helper.h",
912      "quic/quic_chromium_packet_reader.cc",
913      "quic/quic_chromium_packet_reader.h",
914      "quic/quic_chromium_packet_writer.cc",
915      "quic/quic_chromium_packet_writer.h",
916      "quic/quic_client_session_cache.cc",
917      "quic/quic_client_session_cache.h",
918      "quic/quic_clock_skew_detector.cc",
919      "quic/quic_clock_skew_detector.h",
920      "quic/quic_connection_logger.cc",
921      "quic/quic_connection_logger.h",
922      "quic/quic_connectivity_probing_manager.cc",
923      "quic/quic_connectivity_probing_manager.h",
924      "quic/quic_context.cc",
925      "quic/quic_context.h",
926      "quic/quic_crypto_client_config_handle.cc",
927      "quic/quic_crypto_client_config_handle.h",
928      "quic/quic_crypto_client_stream_factory.cc",
929      "quic/quic_crypto_client_stream_factory.h",
930      "quic/quic_flags_list.h",
931      "quic/quic_http3_logger.cc",
932      "quic/quic_http3_logger.h",
933      "quic/quic_http_stream.cc",
934      "quic/quic_http_stream.h",
935      "quic/quic_http_utils.cc",
936      "quic/quic_http_utils.h",
937      "quic/quic_proxy_client_socket.cc",
938      "quic/quic_proxy_client_socket.h",
939      "quic/quic_server_info.cc",
940      "quic/quic_server_info.h",
941      "quic/quic_session_key.cc",
942      "quic/quic_session_key.h",
943      "quic/quic_stream_factory.cc",
944      "quic/quic_stream_factory.h",
945      "quic/quic_transport_client.cc",
946      "quic/quic_transport_client.h",
947      "quic/quic_utils_chromium.cc",
948      "quic/quic_utils_chromium.h",
949      "quiche/common/platform/impl/quiche_arraysize_impl.h",
950      "quiche/common/platform/impl/quiche_endian_impl.h",
951      "quiche/common/platform/impl/quiche_export_impl.h",
952      "quiche/common/platform/impl/quiche_logging_impl.h",
953      "quiche/common/platform/impl/quiche_map_util_impl.h",
954      "quiche/common/platform/impl/quiche_optional_impl.h",
955      "quiche/common/platform/impl/quiche_ptr_util_impl.h",
956      "quiche/common/platform/impl/quiche_str_cat_impl.h",
957      "quiche/common/platform/impl/quiche_string_piece_impl.h",
958      "quiche/common/platform/impl/quiche_text_utils_impl.h",
959      "quiche/common/platform/impl/quiche_unordered_containers_impl.h",
960      "socket/client_socket_factory.cc",
961      "socket/client_socket_factory.h",
962      "socket/client_socket_pool.cc",
963      "socket/client_socket_pool.h",
964      "socket/client_socket_pool_manager.cc",
965      "socket/client_socket_pool_manager.h",
966      "socket/client_socket_pool_manager_impl.cc",
967      "socket/client_socket_pool_manager_impl.h",
968      "socket/datagram_client_socket.h",
969      "socket/datagram_server_socket.h",
970      "socket/datagram_socket.h",
971      "socket/diff_serv_code_point.h",
972      "socket/server_socket.cc",
973      "socket/server_socket.h",
974      "socket/socket_descriptor.cc",
975      "socket/socket_descriptor.h",
976      "socket/socket_net_log_params.cc",
977      "socket/socket_net_log_params.h",
978      "socket/socket_options.cc",
979      "socket/socket_options.h",
980      "socket/socket_tag.cc",
981      "socket/socket_tag.h",
982      "socket/socks5_client_socket.cc",
983      "socket/socks5_client_socket.h",
984      "socket/socks_client_socket.cc",
985      "socket/socks_client_socket.h",
986      "socket/socks_connect_job.cc",
987      "socket/socks_connect_job.h",
988      "socket/ssl_connect_job.cc",
989      "socket/ssl_connect_job.h",
990      "socket/ssl_server_socket.h",
991      "socket/ssl_server_socket_impl.cc",
992      "socket/ssl_server_socket_impl.h",
993      "socket/tcp_client_socket.cc",
994      "socket/tcp_client_socket.h",
995      "socket/tcp_server_socket.cc",
996      "socket/tcp_server_socket.h",
997      "socket/tcp_socket.h",
998      "socket/transport_client_socket.cc",
999      "socket/transport_client_socket.h",
1000      "socket/transport_client_socket_pool.cc",
1001      "socket/transport_client_socket_pool.h",
1002      "socket/transport_connect_job.cc",
1003      "socket/transport_connect_job.h",
1004      "socket/udp_client_socket.cc",
1005      "socket/udp_client_socket.h",
1006      "socket/udp_net_log_parameters.cc",
1007      "socket/udp_net_log_parameters.h",
1008      "socket/udp_server_socket.cc",
1009      "socket/udp_server_socket.h",
1010      "socket/udp_socket.h",
1011      "socket/udp_socket_global_limits.cc",
1012      "socket/udp_socket_global_limits.h",
1013      "socket/websocket_endpoint_lock_manager.cc",
1014      "socket/websocket_endpoint_lock_manager.h",
1015      "socket/websocket_transport_client_socket_pool.cc",
1016      "socket/websocket_transport_client_socket_pool.h",
1017      "socket/websocket_transport_connect_job.cc",
1018      "socket/websocket_transport_connect_job.h",
1019      "socket/websocket_transport_connect_sub_job.cc",
1020      "socket/websocket_transport_connect_sub_job.h",
1021      "spdy/bidirectional_stream_spdy_impl.cc",
1022      "spdy/bidirectional_stream_spdy_impl.h",
1023      "spdy/buffered_spdy_framer.cc",
1024      "spdy/buffered_spdy_framer.h",
1025      "spdy/header_coalescer.cc",
1026      "spdy/header_coalescer.h",
1027      "spdy/http2_priority_dependencies.cc",
1028      "spdy/http2_priority_dependencies.h",
1029      "spdy/http2_push_promise_index.cc",
1030      "spdy/http2_push_promise_index.h",
1031      "spdy/multiplexed_http_stream.cc",
1032      "spdy/multiplexed_http_stream.h",
1033      "spdy/multiplexed_session.cc",
1034      "spdy/multiplexed_session.h",
1035      "spdy/platform/impl/spdy_bug_tracker_impl.h",
1036      "spdy/platform/impl/spdy_containers_impl.h",
1037      "spdy/platform/impl/spdy_endianness_util_impl.h",
1038      "spdy/platform/impl/spdy_estimate_memory_usage_impl.h",
1039      "spdy/platform/impl/spdy_flags_impl.cc",
1040      "spdy/platform/impl/spdy_flags_impl.h",
1041      "spdy/platform/impl/spdy_logging_impl.h",
1042      "spdy/platform/impl/spdy_macros_impl.h",
1043      "spdy/platform/impl/spdy_mem_slice_impl.cc",
1044      "spdy/platform/impl/spdy_mem_slice_impl.h",
1045      "spdy/platform/impl/spdy_string_utils_impl.cc",
1046      "spdy/platform/impl/spdy_string_utils_impl.h",
1047      "spdy/server_push_delegate.h",
1048      "spdy/spdy_buffer.cc",
1049      "spdy/spdy_buffer.h",
1050      "spdy/spdy_buffer_producer.cc",
1051      "spdy/spdy_buffer_producer.h",
1052      "spdy/spdy_http_stream.cc",
1053      "spdy/spdy_http_stream.h",
1054      "spdy/spdy_http_utils.cc",
1055      "spdy/spdy_http_utils.h",
1056      "spdy/spdy_log_util.cc",
1057      "spdy/spdy_log_util.h",
1058      "spdy/spdy_proxy_client_socket.cc",
1059      "spdy/spdy_proxy_client_socket.h",
1060      "spdy/spdy_read_queue.cc",
1061      "spdy/spdy_read_queue.h",
1062      "spdy/spdy_session.cc",
1063      "spdy/spdy_session.h",
1064      "spdy/spdy_session_key.cc",
1065      "spdy/spdy_session_key.h",
1066      "spdy/spdy_session_pool.cc",
1067      "spdy/spdy_session_pool.h",
1068      "spdy/spdy_stream.cc",
1069      "spdy/spdy_stream.h",
1070      "spdy/spdy_write_queue.cc",
1071      "spdy/spdy_write_queue.h",
1072      "ssl/client_cert_store.h",
1073      "ssl/ssl_config_service_defaults.cc",
1074      "ssl/ssl_config_service_defaults.h",
1075      "ssl/ssl_key_logger_impl.cc",
1076      "ssl/ssl_key_logger_impl.h",
1077      "ssl/ssl_platform_key_util.cc",
1078      "ssl/ssl_platform_key_util.h",
1079      "ssl/threaded_ssl_private_key.cc",
1080      "ssl/threaded_ssl_private_key.h",
1081      "url_request/redirect_info.cc",
1082      "url_request/redirect_info.h",
1083      "url_request/redirect_util.cc",
1084      "url_request/redirect_util.h",
1085      "url_request/report_sender.cc",
1086      "url_request/report_sender.h",
1087      "url_request/static_http_user_agent_settings.cc",
1088      "url_request/static_http_user_agent_settings.h",
1089      "url_request/url_fetcher.cc",
1090      "url_request/url_fetcher.h",
1091      "url_request/url_fetcher_core.cc",
1092      "url_request/url_fetcher_core.h",
1093      "url_request/url_fetcher_delegate.cc",
1094      "url_request/url_fetcher_delegate.h",
1095      "url_request/url_fetcher_factory.h",
1096      "url_request/url_fetcher_impl.cc",
1097      "url_request/url_fetcher_impl.h",
1098      "url_request/url_fetcher_response_writer.cc",
1099      "url_request/url_fetcher_response_writer.h",
1100      "url_request/url_request.cc",
1101      "url_request/url_request.h",
1102      "url_request/url_request_context.cc",
1103      "url_request/url_request_context.h",
1104      "url_request/url_request_context_builder.cc",
1105      "url_request/url_request_context_builder.h",
1106      "url_request/url_request_context_getter.cc",
1107      "url_request/url_request_context_getter.h",
1108      "url_request/url_request_context_getter_observer.h",
1109      "url_request/url_request_context_storage.cc",
1110      "url_request/url_request_context_storage.h",
1111      "url_request/url_request_error_job.cc",
1112      "url_request/url_request_error_job.h",
1113      "url_request/url_request_filter.cc",
1114      "url_request/url_request_filter.h",
1115      "url_request/url_request_http_job.cc",
1116      "url_request/url_request_http_job.h",
1117      "url_request/url_request_interceptor.cc",
1118      "url_request/url_request_interceptor.h",
1119      "url_request/url_request_job.cc",
1120      "url_request/url_request_job.h",
1121      "url_request/url_request_job_factory.cc",
1122      "url_request/url_request_job_factory.h",
1123      "url_request/url_request_job_factory_impl.cc",
1124      "url_request/url_request_job_factory_impl.h",
1125      "url_request/url_request_job_manager.cc",
1126      "url_request/url_request_job_manager.h",
1127      "url_request/url_request_netlog_params.cc",
1128      "url_request/url_request_netlog_params.h",
1129      "url_request/url_request_redirect_job.cc",
1130      "url_request/url_request_redirect_job.h",
1131      "url_request/url_request_status.cc",
1132      "url_request/url_request_status.h",
1133      "url_request/url_request_test_job.cc",
1134      "url_request/url_request_test_job.h",
1135      "url_request/url_request_throttler_entry.cc",
1136      "url_request/url_request_throttler_entry.h",
1137      "url_request/url_request_throttler_entry_interface.h",
1138      "url_request/url_request_throttler_manager.cc",
1139      "url_request/url_request_throttler_manager.h",
1140      "url_request/view_cache_helper.cc",
1141      "url_request/view_cache_helper.h",
1142      "url_request/websocket_handshake_userdata_key.cc",
1143      "url_request/websocket_handshake_userdata_key.h",
1144    ]
1145
1146    if (enable_reporting) {
1147      sources += [
1148        "network_error_logging/network_error_logging_service.cc",
1149        "network_error_logging/network_error_logging_service.h",
1150        "network_error_logging/persistent_reporting_and_nel_store.h",
1151        "reporting/reporting_browsing_data_remover.cc",
1152        "reporting/reporting_browsing_data_remover.h",
1153        "reporting/reporting_cache.cc",
1154        "reporting/reporting_cache.h",
1155        "reporting/reporting_cache_impl.cc",
1156        "reporting/reporting_cache_impl.h",
1157        "reporting/reporting_cache_observer.cc",
1158        "reporting/reporting_cache_observer.h",
1159        "reporting/reporting_context.cc",
1160        "reporting/reporting_context.h",
1161        "reporting/reporting_delegate.cc",
1162        "reporting/reporting_delegate.h",
1163        "reporting/reporting_delivery_agent.cc",
1164        "reporting/reporting_delivery_agent.h",
1165        "reporting/reporting_endpoint.cc",
1166        "reporting/reporting_endpoint.h",
1167        "reporting/reporting_endpoint_manager.cc",
1168        "reporting/reporting_endpoint_manager.h",
1169        "reporting/reporting_garbage_collector.cc",
1170        "reporting/reporting_garbage_collector.h",
1171        "reporting/reporting_header_parser.cc",
1172        "reporting/reporting_header_parser.h",
1173        "reporting/reporting_network_change_observer.cc",
1174        "reporting/reporting_network_change_observer.h",
1175        "reporting/reporting_policy.cc",
1176        "reporting/reporting_policy.h",
1177        "reporting/reporting_report.cc",
1178        "reporting/reporting_report.h",
1179        "reporting/reporting_service.cc",
1180        "reporting/reporting_service.h",
1181        "reporting/reporting_uploader.cc",
1182        "reporting/reporting_uploader.h",
1183      ]
1184    }
1185
1186    if (is_android) {
1187      sources += [
1188        "android/android_http_util.cc",
1189        "android/cellular_signal_strength.cc",
1190        "android/cellular_signal_strength.h",
1191        "android/cert_verify_result_android.cc",
1192        "android/cert_verify_result_android.h",
1193        "android/gurl_utils.cc",
1194        "android/http_auth_negotiate_android.cc",
1195        "android/http_auth_negotiate_android.h",
1196        "android/keystore.cc",
1197        "android/keystore.h",
1198        "android/network_change_notifier_android.cc",
1199        "android/network_change_notifier_android.h",
1200        "android/network_change_notifier_delegate_android.cc",
1201        "android/network_change_notifier_delegate_android.h",
1202        "android/network_change_notifier_factory_android.cc",
1203        "android/network_change_notifier_factory_android.h",
1204        "android/network_library.cc",
1205        "android/network_library.h",
1206        "android/traffic_stats.cc",
1207        "android/traffic_stats.h",
1208        "cert/cert_verify_proc_android.cc",
1209        "cert/cert_verify_proc_android.h",
1210        "cert/test_root_certs_android.cc",
1211        "cert/x509_util_android.cc",
1212        "proxy_resolution/proxy_config_service_android.cc",
1213        "proxy_resolution/proxy_config_service_android.h",
1214        "ssl/ssl_platform_key_android.cc",
1215        "ssl/ssl_platform_key_android.h",
1216      ]
1217    }
1218
1219    if (is_chromeos && use_nss_certs) {
1220      sources += [
1221        "cert/nss_cert_database_chromeos.cc",
1222        "cert/nss_cert_database_chromeos.h",
1223        "cert/nss_profile_filter_chromeos.cc",
1224        "cert/nss_profile_filter_chromeos.h",
1225      ]
1226    }
1227
1228    if (is_ios) {
1229      sources += [
1230        "cert/cert_verify_proc_ios.cc",
1231        "cert/cert_verify_proc_ios.h",
1232        "cert/x509_util_ios.cc",
1233        "cert/x509_util_ios.h",
1234        "disk_cache/blockfile/file_ios.cc",
1235        "proxy_resolution/proxy_config_service_ios.cc",
1236        "proxy_resolution/proxy_config_service_ios.h",
1237      ]
1238    }
1239
1240    if (is_linux) {
1241      sources += [
1242        "base/network_change_notifier_linux.cc",
1243        "base/network_change_notifier_linux.h",
1244        "proxy_resolution/proxy_config_service_linux.cc",
1245        "proxy_resolution/proxy_config_service_linux.h",
1246      ]
1247    }
1248
1249    if (is_linux || is_android) {
1250      sources += [
1251        "base/address_tracker_linux.cc",
1252        "base/address_tracker_linux.h",
1253        "base/network_interfaces_linux.cc",
1254        "base/network_interfaces_linux.h",
1255        "base/platform_mime_util_linux.cc",
1256      ]
1257    }
1258
1259    if (is_bsd) {
1260      sources -= [
1261        "base/address_tracker_linux.cc",
1262        "base/address_tracker_linux.h",
1263        "base/network_change_notifier_linux.cc",
1264        "base/network_change_notifier_linux.h",
1265        "base/network_interfaces_linux.cc"
1266      ]
1267    }
1268
1269    if (is_mac) {
1270      sources += [
1271        "base/network_notification_thread_mac.cc",
1272        "base/network_notification_thread_mac.h",
1273        "cert/cert_database_mac.cc",
1274        "cert/cert_verify_proc_mac.cc",
1275        "cert/cert_verify_proc_mac.h",
1276        "cert/internal/trust_store_mac.cc",
1277        "cert/internal/trust_store_mac.h",
1278        "cert/known_roots_mac.cc",
1279        "cert/known_roots_mac.h",
1280        "cert/test_keychain_search_list_mac.cc",
1281        "cert/test_keychain_search_list_mac.h",
1282        "cert/x509_util_mac.cc",
1283        "cert/x509_util_mac.h",
1284        "proxy_resolution/proxy_config_service_mac.cc",
1285        "proxy_resolution/proxy_config_service_mac.h",
1286        "ssl/client_cert_identity_mac.cc",
1287        "ssl/client_cert_identity_mac.h",
1288        "ssl/client_cert_store_mac.cc",
1289        "ssl/client_cert_store_mac.h",
1290        "ssl/ssl_platform_key_mac.cc",
1291        "ssl/ssl_platform_key_mac.h",
1292      ]
1293    }
1294
1295    if (is_ios || is_mac) {
1296      sources += [
1297        "base/mac/url_conversions.h",
1298        "base/mac/url_conversions.mm",
1299        "base/network_change_notifier_mac.cc",
1300        "base/network_change_notifier_mac.h",
1301        "base/network_config_watcher_mac.cc",
1302        "base/network_config_watcher_mac.h",
1303        "base/platform_mime_util_mac.mm",
1304        "base/proxy_server_mac.cc",
1305        "cert/test_root_certs_mac.cc",
1306        "cert/x509_util_ios_and_mac.cc",
1307        "cert/x509_util_ios_and_mac.h",
1308        "proxy_resolution/proxy_resolver_mac.cc",
1309        "proxy_resolution/proxy_resolver_mac.h",
1310      ]
1311    }
1312
1313    if (is_win) {
1314      sources += [
1315        "base/file_stream_context_win.cc",
1316        "base/net_errors_win.cc",
1317        "base/network_change_notifier_win.cc",
1318        "base/network_change_notifier_win.h",
1319        "base/network_interfaces_win.cc",
1320        "base/network_interfaces_win.h",
1321        "base/platform_mime_util_win.cc",
1322        "base/winsock_init.cc",
1323        "base/winsock_init.h",
1324        "base/winsock_util.cc",
1325        "base/winsock_util.h",
1326        "cert/cert_verify_proc_win.cc",
1327        "cert/cert_verify_proc_win.h",
1328        "cert/known_roots_win.cc",
1329        "cert/known_roots_win.h",
1330        "cert/test_root_certs_win.cc",
1331        "cert/x509_util_win.cc",
1332        "cert/x509_util_win.h",
1333        "disk_cache/blockfile/file_win.cc",
1334        "disk_cache/blockfile/mapped_file_win.cc",
1335        "disk_cache/cache_util_win.cc",
1336        "disk_cache/simple/simple_index_file_win.cc",
1337        "disk_cache/simple/simple_util_win.cc",
1338        "http/http_auth_handler_ntlm_win.cc",
1339        "http/http_auth_sspi_win.cc",
1340        "http/http_auth_sspi_win.h",
1341        "http/url_security_manager_win.cc",
1342        "proxy_resolution/dhcp_pac_file_adapter_fetcher_win.cc",
1343        "proxy_resolution/dhcp_pac_file_adapter_fetcher_win.h",
1344        "proxy_resolution/dhcp_pac_file_fetcher_win.cc",
1345        "proxy_resolution/dhcp_pac_file_fetcher_win.h",
1346        "proxy_resolution/dhcpcsvc_init_win.cc",
1347        "proxy_resolution/dhcpcsvc_init_win.h",
1348        "proxy_resolution/proxy_config_service_win.cc",
1349        "proxy_resolution/proxy_config_service_win.h",
1350        "proxy_resolution/proxy_resolver_winhttp.cc",
1351        "proxy_resolution/proxy_resolver_winhttp.h",
1352        "proxy_resolution/win/windows_system_proxy_resolution_request.cc",
1353        "proxy_resolution/win/windows_system_proxy_resolution_request.h",
1354        "proxy_resolution/win/windows_system_proxy_resolution_service.cc",
1355        "proxy_resolution/win/windows_system_proxy_resolution_service.h",
1356        "socket/tcp_socket_win.cc",
1357        "socket/tcp_socket_win.h",
1358        "socket/udp_socket_win.cc",
1359        "socket/udp_socket_win.h",
1360        "ssl/client_cert_store_win.cc",
1361        "ssl/client_cert_store_win.h",
1362        "ssl/ssl_platform_key_win.cc",
1363      ]
1364    }
1365
1366    if (use_kerberos) {
1367      sources += [
1368        "http/http_auth_handler_negotiate.cc",
1369        "http/http_auth_handler_negotiate.h",
1370      ]
1371    }
1372
1373    if (is_posix || is_fuchsia) {
1374      sources += [
1375        "base/file_stream_context_posix.cc",
1376        "base/network_interfaces_posix.cc",
1377        "base/network_interfaces_posix.h",
1378        "disk_cache/cache_util_posix.cc",
1379        "disk_cache/simple/simple_index_file_posix.cc",
1380        "disk_cache/simple/simple_util_posix.cc",
1381        "http/url_security_manager_posix.cc",
1382        "socket/socket_posix.cc",
1383        "socket/socket_posix.h",
1384        "socket/tcp_socket_posix.cc",
1385        "socket/tcp_socket_posix.h",
1386        "socket/udp_socket_posix.cc",
1387        "socket/udp_socket_posix.h",
1388      ]
1389      if (!is_ios) {
1390        sources += [ "disk_cache/blockfile/file_posix.cc" ]
1391      }
1392      if (posix_avoid_mmap) {
1393        sources += [ "disk_cache/blockfile/mapped_file_avoid_mmap_posix.cc" ]
1394      } else {
1395        sources += [ "disk_cache/blockfile/mapped_file_posix.cc" ]
1396      }
1397    }
1398
1399    if (is_android || is_chromeos || is_bsd) {
1400      sources += [
1401        "base/network_change_notifier_posix.cc",
1402        "base/network_change_notifier_posix.h",
1403      ]
1404    }
1405
1406    if (!is_win) {
1407      sources += [
1408        "http/http_auth_handler_ntlm_portable.cc",
1409        "http/http_auth_ntlm_mechanism.cc",
1410        "http/http_auth_ntlm_mechanism.h",
1411        "ntlm/ntlm.cc",
1412        "ntlm/ntlm.h",
1413        "ntlm/ntlm_buffer_reader.cc",
1414        "ntlm/ntlm_buffer_reader.h",
1415        "ntlm/ntlm_buffer_writer.cc",
1416        "ntlm/ntlm_buffer_writer.h",
1417        "ntlm/ntlm_client.cc",
1418        "ntlm/ntlm_client.h",
1419        "ntlm/ntlm_constants.cc",
1420        "ntlm/ntlm_constants.h",
1421      ]
1422    }
1423
1424    if (use_external_gssapi) {
1425      sources += [
1426        "http/http_auth_gssapi_posix.cc",
1427        "http/http_auth_gssapi_posix.h",
1428      ]
1429    }
1430
1431    # Use getifaddrs() on POSIX platforms, except Linux and Android.
1432    if (is_posix && ((!is_linux && !is_android) || (is_bsd))) {
1433      sources += [
1434        "base/network_interfaces_getifaddrs.cc",
1435        "base/network_interfaces_getifaddrs.h",
1436      ]
1437    }
1438
1439    if (use_nss_certs) {
1440      sources += [
1441        "cert/internal/system_trust_store_nss.h",
1442        "cert/internal/trust_store_nss.cc",
1443        "cert/internal/trust_store_nss.h",
1444        "cert/known_roots_nss.cc",
1445        "cert/known_roots_nss.h",
1446        "cert/nss_cert_database.cc",
1447        "cert/nss_cert_database.h",
1448        "third_party/mozilla_security_manager/nsNSSCertificateDB.cpp",
1449        "third_party/mozilla_security_manager/nsNSSCertificateDB.h",
1450        "third_party/mozilla_security_manager/nsPKCS12Blob.cpp",
1451        "third_party/mozilla_security_manager/nsPKCS12Blob.h",
1452        "third_party/nss/ssl/cmpcert.cc",
1453        "third_party/nss/ssl/cmpcert.h",
1454
1455        # These files are part of the partial implementation of NSS for
1456        # cert verification, so keep them in that case.
1457        "cert/cert_verify_proc_nss.cc",
1458        "cert/cert_verify_proc_nss.h",
1459        "cert/test_root_certs_nss.cc",
1460        "cert/x509_util_nss.cc",
1461        "cert/x509_util_nss.h",
1462        "cert_net/nss_ocsp.cc",
1463        "cert_net/nss_ocsp.h",
1464        "cert_net/nss_ocsp_session_url_request.cc",
1465        "cert_net/nss_ocsp_session_url_request.h",
1466      ]
1467      if (!is_chromecast) {
1468        sources += [
1469          "ssl/client_cert_store_nss.cc",
1470          "ssl/client_cert_store_nss.h",
1471          "ssl/ssl_platform_key_nss.cc",
1472          "ssl/ssl_platform_key_nss.h",
1473        ]
1474      }
1475    }
1476
1477    if (is_fuchsia) {
1478      public_deps += [ "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.netstack" ]
1479      sources += [
1480        "base/network_change_notifier_fuchsia.cc",
1481        "base/network_change_notifier_fuchsia.h",
1482        "base/network_interfaces_fuchsia.cc",
1483        "base/network_interfaces_fuchsia.h",
1484        "base/platform_mime_util_fuchsia.cc",
1485        "cert/test_root_certs_fuchsia.cc",
1486      ]
1487    }
1488
1489    if (trial_comparison_cert_verifier_supported) {
1490      sources += [
1491        "cert/trial_comparison_cert_verifier.cc",
1492        "cert/trial_comparison_cert_verifier.h",
1493      ]
1494    }
1495  }
1496
1497  if (enable_unix_sockets) {
1498    sources += [
1499      "socket/unix_domain_client_socket_posix.cc",
1500      "socket/unix_domain_client_socket_posix.h",
1501      "socket/unix_domain_server_socket_posix.cc",
1502      "socket/unix_domain_server_socket_posix.h",
1503    ]
1504  }
1505
1506  cflags = []
1507
1508  if (is_mac) {
1509    libs = [
1510      "CFNetwork.framework",
1511      "CoreServices.framework",
1512      "Foundation.framework",
1513      "Security.framework",
1514      "SystemConfiguration.framework",
1515      "resolv",
1516    ]
1517  }
1518
1519  if (is_ios) {
1520    libs = [
1521      "CFNetwork.framework",
1522      "MobileCoreServices.framework",
1523      "Security.framework",
1524      "SystemConfiguration.framework",
1525      "resolv",
1526    ]
1527  }
1528
1529  if (is_win) {
1530    libs = [
1531      "crypt32.lib",
1532      "dhcpcsvc.lib",
1533      "iphlpapi.lib",
1534      "ncrypt.lib",
1535      "rpcrt4.lib",
1536      "secur32.lib",
1537      "urlmon.lib",
1538      "winhttp.lib",
1539    ]
1540
1541    ldflags = [ "/DELAYLOAD:urlmon.dll" ]
1542  }
1543
1544  if (!is_nacl) {
1545    if (!disable_file_support) {
1546      sources += [
1547        "base/directory_lister.cc",
1548        "base/directory_lister.h",
1549        "base/directory_listing.cc",
1550        "base/directory_listing.h",
1551      ]
1552    }
1553
1554    if (!disable_ftp_support) {
1555      sources += [
1556        "ftp/ftp_auth_cache.cc",
1557        "ftp/ftp_auth_cache.h",
1558        "ftp/ftp_ctrl_response_buffer.cc",
1559        "ftp/ftp_ctrl_response_buffer.h",
1560        "ftp/ftp_directory_listing_parser.cc",
1561        "ftp/ftp_directory_listing_parser.h",
1562        "ftp/ftp_directory_listing_parser_ls.cc",
1563        "ftp/ftp_directory_listing_parser_ls.h",
1564        "ftp/ftp_directory_listing_parser_vms.cc",
1565        "ftp/ftp_directory_listing_parser_vms.h",
1566        "ftp/ftp_directory_listing_parser_windows.cc",
1567        "ftp/ftp_directory_listing_parser_windows.h",
1568        "ftp/ftp_network_layer.cc",
1569        "ftp/ftp_network_layer.h",
1570        "ftp/ftp_network_session.cc",
1571        "ftp/ftp_network_session.h",
1572        "ftp/ftp_network_transaction.cc",
1573        "ftp/ftp_network_transaction.h",
1574        "ftp/ftp_request_info.h",
1575        "ftp/ftp_response_info.cc",
1576        "ftp/ftp_response_info.h",
1577        "ftp/ftp_server_type.h",
1578        "ftp/ftp_transaction.h",
1579        "ftp/ftp_transaction_factory.h",
1580        "ftp/ftp_util.cc",
1581        "ftp/ftp_util.h",
1582        "url_request/ftp_protocol_handler.cc",
1583        "url_request/ftp_protocol_handler.h",
1584        "url_request/url_request_ftp_job.cc",
1585        "url_request/url_request_ftp_job.h",
1586      ]
1587    }
1588
1589    if (enable_websockets) {
1590      sources += [
1591        "websockets/websocket_basic_handshake_stream.cc",
1592        "websockets/websocket_basic_handshake_stream.h",
1593        "websockets/websocket_basic_stream.cc",
1594        "websockets/websocket_basic_stream.h",
1595        "websockets/websocket_basic_stream_adapters.cc",
1596        "websockets/websocket_basic_stream_adapters.h",
1597        "websockets/websocket_channel.cc",
1598        "websockets/websocket_channel.h",
1599        "websockets/websocket_deflate_parameters.cc",
1600        "websockets/websocket_deflate_parameters.h",
1601        "websockets/websocket_deflate_predictor.h",
1602        "websockets/websocket_deflate_predictor_impl.cc",
1603        "websockets/websocket_deflate_predictor_impl.h",
1604        "websockets/websocket_deflate_stream.cc",
1605        "websockets/websocket_deflate_stream.h",
1606        "websockets/websocket_deflater.cc",
1607        "websockets/websocket_deflater.h",
1608        "websockets/websocket_errors.cc",
1609        "websockets/websocket_errors.h",
1610        "websockets/websocket_event_interface.h",
1611        "websockets/websocket_extension.cc",
1612        "websockets/websocket_extension.h",
1613        "websockets/websocket_extension_parser.cc",
1614        "websockets/websocket_extension_parser.h",
1615        "websockets/websocket_frame.cc",
1616        "websockets/websocket_frame.h",
1617        "websockets/websocket_frame_parser.cc",
1618        "websockets/websocket_frame_parser.h",
1619        "websockets/websocket_handshake_challenge.cc",
1620        "websockets/websocket_handshake_challenge.h",
1621        "websockets/websocket_handshake_constants.cc",
1622        "websockets/websocket_handshake_constants.h",
1623        "websockets/websocket_handshake_request_info.cc",
1624        "websockets/websocket_handshake_request_info.h",
1625        "websockets/websocket_handshake_response_info.cc",
1626        "websockets/websocket_handshake_response_info.h",
1627        "websockets/websocket_handshake_stream_base.cc",
1628        "websockets/websocket_handshake_stream_base.h",
1629        "websockets/websocket_handshake_stream_create_helper.cc",
1630        "websockets/websocket_handshake_stream_create_helper.h",
1631        "websockets/websocket_http2_handshake_stream.cc",
1632        "websockets/websocket_http2_handshake_stream.h",
1633        "websockets/websocket_inflater.cc",
1634        "websockets/websocket_inflater.h",
1635        "websockets/websocket_stream.cc",
1636        "websockets/websocket_stream.h",
1637      ]
1638    }
1639
1640    # ICU support.
1641    if (use_platform_icu_alternatives) {
1642      if (is_android) {
1643        # Use ICU alternative on Android.
1644        sources += [ "base/net_string_util_icu_alternatives_android.cc" ]
1645      } else if (is_ios) {
1646        # Use ICU alternative on iOS.
1647        sources += [ "base/net_string_util_icu_alternatives_ios.mm" ]
1648      } else {
1649        assert(false,
1650               "ICU alternative is not implemented for platform: " + target_os)
1651      }
1652    } else {
1653      # Use ICU.
1654      sources += [
1655        "base/filename_util_icu.cc",
1656        "base/net_string_util_icu.cc",
1657      ]
1658    }
1659
1660    # Brotli support.
1661    if (!disable_brotli_filter) {
1662      sources += [
1663        "filter/brotli_source_stream.cc",
1664        "filter/brotli_source_stream.h",
1665      ]
1666    } else {
1667      sources += [ "filter/brotli_source_stream_disabled.cc" ]
1668    }
1669  }
1670
1671  if (!is_debug && !optimize_for_size) {
1672    configs -= [ "//build/config/compiler:default_optimization" ]
1673    configs += [ "//build/config/compiler:optimize_max" ]
1674  }
1675}
1676
1677# net_export.h has its own build target so that code (eg
1678# net_nqe_proto) can use it without depending on the whole of //net.
1679source_set("net_export_header") {
1680  sources = [ "base/net_export.h" ]
1681}
1682
1683# Private dependencies for the //net component and for any build targets (e.g.
1684# source sets with circular dependencies with //net) that need to share the same
1685# dependencies.
1686source_set("net_deps") {
1687  visibility = [
1688    ":net",
1689    "//net/dns",
1690    "//net/dns:dns_client",
1691    "//net/dns:host_resolver",
1692    "//net/dns:host_resolver_manager",
1693    "//net/dns:mdns_client",
1694    "//net/dns/public",
1695    "//net/http:transport_security_state_generated_files",
1696    "//net/third_party/quiche",
1697  ]
1698
1699  public_deps = [
1700    ":constants",
1701    ":net_export_header",
1702    ":net_resources",
1703    ":preload_decoder",
1704    "//base",
1705    "//base/util/type_safety:type_safety",
1706    "//net/base/registry_controlled_domains",
1707    "//third_party/protobuf:protobuf_lite",
1708    "//url:buildflags",
1709  ]
1710
1711  public_configs = net_configs
1712
1713  if (!is_nacl) {
1714    public_deps += [
1715      "//base/third_party/dynamic_annotations",
1716      "//third_party/zlib",
1717    ]
1718
1719    if (use_gio) {
1720      public_configs += [ "//build/linux:gio_config" ]
1721    }
1722
1723    if (is_android) {
1724      public_deps += [ ":net_jni_headers" ]
1725    }
1726
1727    if (is_fuchsia) {
1728      public_deps += [
1729        "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.hardware.ethernet",
1730        "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.netstack",
1731        "//third_party/fuchsia-sdk/sdk/pkg/sys_cpp",
1732      ]
1733    }
1734
1735    if (use_platform_icu_alternatives) {
1736      if (is_android) {
1737        public_deps += [ ":net_jni_headers" ]
1738      }
1739    } else {
1740      public_deps += [
1741        "//base:i18n",
1742        "//third_party/icu",
1743      ]
1744    }
1745
1746    if (!disable_brotli_filter) {
1747      public_deps += [ "//third_party/brotli:dec" ]
1748    } else {
1749      public_deps += [ "//third_party/brotli:headers" ]
1750    }
1751  }
1752}
1753
1754# Public dependencies for the //net component and for any build targets (e.g.
1755# source sets with circular dependencies with //net) that need to share the same
1756# dependencies.
1757source_set("net_public_deps") {
1758  visibility = [
1759    ":net",
1760    "//net/dns",
1761    "//net/dns:dns_client",
1762    "//net/dns:host_resolver",
1763    "//net/dns:host_resolver_manager",
1764    "//net/dns:mdns_client",
1765    "//net/dns/public",
1766    "//net/http:transport_security_state_generated_files",
1767    "//net/third_party/quiche",
1768  ]
1769
1770  public_deps = [
1771    ":buildflags",
1772    ":net_nqe_proto",
1773    "//crypto",
1774    "//crypto:platform",
1775    "//net/third_party/quiche:net_quic_proto",
1776    "//net/third_party/quiche:net_quic_test_tools_proto",
1777    "//net/traffic_annotation",
1778    "//third_party/boringssl",
1779    "//url",
1780  ]
1781
1782  if (is_nacl) {
1783    public_deps += [ "//native_client_sdk/src/libraries/nacl_io" ]
1784  }
1785}
1786
1787if (is_android) {
1788  java_cpp_enum("effective_connection_type_java") {
1789    sources = [ "//net/nqe/effective_connection_type.h" ]
1790  }
1791}
1792
1793grit("net_resources") {
1794  source = "base/net_resources.grd"
1795  outputs = [
1796    "grit/net_resources.h",
1797    "net_resources.pak",
1798  ]
1799}
1800
1801proto_library("net_nqe_proto") {
1802  visibility = [ ":net_public_deps" ]
1803
1804  sources = [ "nqe/proto/network_id_proto.proto" ]
1805  cc_generator_options = "dllexport_decl=NET_EXPORT_PRIVATE:"
1806  cc_include = "net/base/net_export.h"
1807  component_build_force_source_set = true
1808
1809  deps = [ ":net_export_header" ]
1810
1811  defines = [ "NET_IMPLEMENTATION" ]
1812
1813  extra_configs = [ "//build/config/compiler:wexit_time_destructors" ]
1814}
1815
1816component("extras") {
1817  sources = [
1818    "extras/sqlite/cookie_crypto_delegate.h",
1819    "extras/sqlite/sqlite_persistent_cookie_store.cc",
1820    "extras/sqlite/sqlite_persistent_cookie_store.h",
1821    "extras/sqlite/sqlite_persistent_store_backend_base.cc",
1822    "extras/sqlite/sqlite_persistent_store_backend_base.h",
1823  ]
1824  defines = [ "IS_NET_EXTRAS_IMPL" ]
1825  configs += [ "//build/config/compiler:wexit_time_destructors" ]
1826  deps = [
1827    ":net",
1828    "//base",
1829    "//sql:sql",
1830  ]
1831
1832  if (enable_reporting) {
1833    sources += [
1834      "extras/sqlite/sqlite_persistent_reporting_and_nel_store.cc",
1835      "extras/sqlite/sqlite_persistent_reporting_and_nel_store.h",
1836    ]
1837  }
1838}
1839
1840static_library("preload_decoder") {
1841  sources = [
1842    "extras/preload_data/decoder.cc",
1843    "extras/preload_data/decoder.h",
1844  ]
1845  deps = [ "//base" ]
1846}
1847
1848if (!is_ios) {
1849  executable("dump_cache") {
1850    testonly = true
1851    sources = [
1852      "tools/dump_cache/dump_cache.cc",
1853      "tools/dump_cache/dump_files.cc",
1854      "tools/dump_cache/dump_files.h",
1855    ]
1856
1857    deps = [
1858      ":net",
1859      ":test_support",
1860      "//base",
1861      "//build/win:default_exe_manifest",
1862    ]
1863  }
1864}
1865
1866# This section can be updated from globbing rules using:
1867#    python ./tools/update_ios_bundle_data.py
1868bundle_data("test_support_bundle_data") {
1869  visibility = [ ":test_support" ]
1870  testonly = true
1871  sources = [
1872    "data/quic_http_response_cache_data/test.example.com/index.html",
1873    "data/quic_http_response_cache_data/test.example.com/map.html",
1874    "data/quic_http_response_cache_data_with_push/test.example.com/favicon.ico",
1875    "data/quic_http_response_cache_data_with_push/test.example.com/index.html",
1876    "data/quic_http_response_cache_data_with_push/test.example.com/index2.html",
1877    "data/quic_http_response_cache_data_with_push/test.example.com/kitten-1.jpg",
1878    "data/ssl/certificates/1024-rsa-ee-by-1024-rsa-intermediate.pem",
1879    "data/ssl/certificates/1024-rsa-ee-by-2048-rsa-intermediate.pem",
1880    "data/ssl/certificates/1024-rsa-ee-by-768-rsa-intermediate.pem",
1881    "data/ssl/certificates/1024-rsa-ee-by-prime256v1-ecdsa-intermediate.pem",
1882    "data/ssl/certificates/1024-rsa-intermediate.pem",
1883    "data/ssl/certificates/10_year_validity.pem",
1884    "data/ssl/certificates/11_year_validity.pem",
1885    "data/ssl/certificates/2029_globalsign_com_cert.pem",
1886    "data/ssl/certificates/2048-rsa-ee-by-1024-rsa-intermediate.pem",
1887    "data/ssl/certificates/2048-rsa-ee-by-2048-rsa-intermediate.pem",
1888    "data/ssl/certificates/2048-rsa-ee-by-768-rsa-intermediate.pem",
1889    "data/ssl/certificates/2048-rsa-ee-by-prime256v1-ecdsa-intermediate.pem",
1890    "data/ssl/certificates/2048-rsa-intermediate.pem",
1891    "data/ssl/certificates/2048-rsa-root.pem",
1892    "data/ssl/certificates/39_months_after_2015_04.pem",
1893    "data/ssl/certificates/39_months_based_on_last_day.pem",
1894    "data/ssl/certificates/40_months_after_2015_04.pem",
1895    "data/ssl/certificates/60_months_after_2012_07.pem",
1896    "data/ssl/certificates/61_months_after_2012_07.pem",
1897    "data/ssl/certificates/768-rsa-ee-by-1024-rsa-intermediate.pem",
1898    "data/ssl/certificates/768-rsa-ee-by-2048-rsa-intermediate.pem",
1899    "data/ssl/certificates/768-rsa-ee-by-768-rsa-intermediate.pem",
1900    "data/ssl/certificates/768-rsa-ee-by-prime256v1-ecdsa-intermediate.pem",
1901    "data/ssl/certificates/768-rsa-intermediate.pem",
1902    "data/ssl/certificates/825_days_1_second_after_2018_03_01.pem",
1903    "data/ssl/certificates/825_days_after_2018_03_01.pem",
1904    "data/ssl/certificates/826_days_after_2018_03_01.pem",
1905    "data/ssl/certificates/900_days_after_2019_07_01.pem",
1906    "data/ssl/certificates/BUILD.gn",
1907    "data/ssl/certificates/README",
1908    "data/ssl/certificates/aia-cert.pem",
1909    "data/ssl/certificates/aia-intermediate.der",
1910    "data/ssl/certificates/aia-root.pem",
1911    "data/ssl/certificates/bad_validity.pem",
1912    "data/ssl/certificates/can_sign_http_exchanges_draft_extension.pem",
1913    "data/ssl/certificates/can_sign_http_exchanges_draft_extension_invalid.pem",
1914    "data/ssl/certificates/client-empty-password.p12",
1915    "data/ssl/certificates/client-nokey.p12",
1916    "data/ssl/certificates/client-null-password.p12",
1917    "data/ssl/certificates/client.p12",
1918    "data/ssl/certificates/client_1.key",
1919    "data/ssl/certificates/client_1.pem",
1920    "data/ssl/certificates/client_1.pk8",
1921    "data/ssl/certificates/client_1_ca.pem",
1922    "data/ssl/certificates/client_2.key",
1923    "data/ssl/certificates/client_2.pem",
1924    "data/ssl/certificates/client_2.pk8",
1925    "data/ssl/certificates/client_2_ca.pem",
1926    "data/ssl/certificates/client_3.key",
1927    "data/ssl/certificates/client_3.pem",
1928    "data/ssl/certificates/client_3.pk8",
1929    "data/ssl/certificates/client_3_ca.pem",
1930    "data/ssl/certificates/client_4.key",
1931    "data/ssl/certificates/client_4.pem",
1932    "data/ssl/certificates/client_4.pk8",
1933    "data/ssl/certificates/client_4_ca.pem",
1934    "data/ssl/certificates/client_5.key",
1935    "data/ssl/certificates/client_5.pem",
1936    "data/ssl/certificates/client_5.pk8",
1937    "data/ssl/certificates/client_5_ca.pem",
1938    "data/ssl/certificates/client_6.key",
1939    "data/ssl/certificates/client_6.pem",
1940    "data/ssl/certificates/client_6.pk8",
1941    "data/ssl/certificates/client_6_ca.pem",
1942    "data/ssl/certificates/client_root_ca.pem",
1943    "data/ssl/certificates/common_name_only.pem",
1944    "data/ssl/certificates/comodo-chain.pem",
1945    "data/ssl/certificates/crit-codeSigning-chain.pem",
1946    "data/ssl/certificates/crlset_blocked_interception_by_intermediate.raw",
1947    "data/ssl/certificates/crlset_blocked_interception_by_root.raw",
1948    "data/ssl/certificates/crlset_by_intermediate_serial.raw",
1949    "data/ssl/certificates/crlset_by_leaf_spki.raw",
1950    "data/ssl/certificates/crlset_by_leaf_subject_no_spki.raw",
1951    "data/ssl/certificates/crlset_by_root_serial.raw",
1952    "data/ssl/certificates/crlset_by_root_subject.raw",
1953    "data/ssl/certificates/crlset_by_root_subject_no_spki.raw",
1954    "data/ssl/certificates/crlset_known_interception_by_root.raw",
1955    "data/ssl/certificates/cross-signed-leaf.pem",
1956    "data/ssl/certificates/cross-signed-root-md5.pem",
1957    "data/ssl/certificates/cross-signed-root-sha256.pem",
1958    "data/ssl/certificates/ct-test-embedded-cert.pem",
1959    "data/ssl/certificates/ct-test-embedded-with-intermediate-chain.pem",
1960    "data/ssl/certificates/ct-test-embedded-with-intermediate-preca-chain.pem",
1961    "data/ssl/certificates/ct-test-embedded-with-preca-chain.pem",
1962    "data/ssl/certificates/daltonridgeapts.com-chain.pem",
1963    "data/ssl/certificates/dec_2017.pem",
1964    "data/ssl/certificates/diginotar_cyber_ca.pem",
1965    "data/ssl/certificates/diginotar_pkioverheid.pem",
1966    "data/ssl/certificates/diginotar_pkioverheid_g2.pem",
1967    "data/ssl/certificates/diginotar_public_ca_2025.pem",
1968    "data/ssl/certificates/diginotar_root_ca.pem",
1969    "data/ssl/certificates/diginotar_services_1024_ca.pem",
1970    "data/ssl/certificates/duplicate_cn_1.p12",
1971    "data/ssl/certificates/duplicate_cn_1.pem",
1972    "data/ssl/certificates/duplicate_cn_2.p12",
1973    "data/ssl/certificates/duplicate_cn_2.pem",
1974    "data/ssl/certificates/eku-test-root.pem",
1975    "data/ssl/certificates/empty_subject_cert.der",
1976    "data/ssl/certificates/expired_cert.pem",
1977    "data/ssl/certificates/explicit-policy-chain.pem",
1978    "data/ssl/certificates/foaf.me.chromium-test-cert.der",
1979    "data/ssl/certificates/gms.hongleong.com.my-verisign-chain.pem",
1980    "data/ssl/certificates/google.binary.p7b",
1981    "data/ssl/certificates/google.chain.pem",
1982    "data/ssl/certificates/google.pem_cert.p7b",
1983    "data/ssl/certificates/google.pem_pkcs7.p7b",
1984    "data/ssl/certificates/google.single.der",
1985    "data/ssl/certificates/google.single.pem",
1986    "data/ssl/certificates/google_diginotar.pem",
1987    "data/ssl/certificates/googlenew.chain.pem",
1988    "data/ssl/certificates/intermediate_ca_cert.pem",
1989    "data/ssl/certificates/invalid_key_usage_cert.der",
1990    "data/ssl/certificates/key_usage_p256.key",
1991    "data/ssl/certificates/key_usage_p256_both.pem",
1992    "data/ssl/certificates/key_usage_p256_digitalsignature.pem",
1993    "data/ssl/certificates/key_usage_p256_keyagreement.pem",
1994    "data/ssl/certificates/key_usage_p256_no_extension.pem",
1995    "data/ssl/certificates/key_usage_rsa.key",
1996    "data/ssl/certificates/key_usage_rsa_both.pem",
1997    "data/ssl/certificates/key_usage_rsa_digitalsignature.pem",
1998    "data/ssl/certificates/key_usage_rsa_keyencipherment.pem",
1999    "data/ssl/certificates/key_usage_rsa_no_extension.pem",
2000    "data/ssl/certificates/large_key.pem",
2001    "data/ssl/certificates/localhost_cert.pem",
2002    "data/ssl/certificates/login.trustwave.com.pem",
2003    "data/ssl/certificates/may_2018.pem",
2004    "data/ssl/certificates/mit.davidben.der",
2005    "data/ssl/certificates/multi-root-A-by-B.pem",
2006    "data/ssl/certificates/multi-root-B-by-C.pem",
2007    "data/ssl/certificates/multi-root-B-by-F.pem",
2008    "data/ssl/certificates/multi-root-BFE.keychain",
2009    "data/ssl/certificates/multi-root-C-by-D.pem",
2010    "data/ssl/certificates/multi-root-C-by-E.pem",
2011    "data/ssl/certificates/multi-root-D-by-D.pem",
2012    "data/ssl/certificates/multi-root-E-by-E.pem",
2013    "data/ssl/certificates/multi-root-F-by-E.pem",
2014    "data/ssl/certificates/multi-root-chain1.pem",
2015    "data/ssl/certificates/multi-root-chain2.pem",
2016    "data/ssl/certificates/multi-root-crlset-C.raw",
2017    "data/ssl/certificates/multi-root-crlset-CD-and-FE.raw",
2018    "data/ssl/certificates/multi-root-crlset-D-and-E.raw",
2019    "data/ssl/certificates/multi-root-crlset-E.raw",
2020    "data/ssl/certificates/multi-root-crlset-unrelated.raw",
2021    "data/ssl/certificates/multi-root.keychain",
2022    "data/ssl/certificates/multivalue_rdn.pem",
2023    "data/ssl/certificates/name-normalization-byteequal.pem",
2024    "data/ssl/certificates/name-normalization-case-folding.pem",
2025    "data/ssl/certificates/name-normalization-printable-utf8.pem",
2026    "data/ssl/certificates/name_constraint_bad.pem",
2027    "data/ssl/certificates/name_constraint_good.pem",
2028    "data/ssl/certificates/ndn.ca.crt",
2029    "data/ssl/certificates/nist.der",
2030    "data/ssl/certificates/no_subject_common_name_cert.pem",
2031    "data/ssl/certificates/non-crit-codeSigning-chain.pem",
2032    "data/ssl/certificates/ocsp-test-root.pem",
2033    "data/ssl/certificates/ok_cert.pem",
2034    "data/ssl/certificates/ok_cert_by_intermediate.pem",
2035    "data/ssl/certificates/post_june_2016.pem",
2036    "data/ssl/certificates/pre_br_validity_bad_121.pem",
2037    "data/ssl/certificates/pre_br_validity_bad_2020.pem",
2038    "data/ssl/certificates/pre_br_validity_ok.pem",
2039    "data/ssl/certificates/pre_june_2016.pem",
2040    "data/ssl/certificates/prime256v1-ecdsa-ee-by-1024-rsa-intermediate.pem",
2041    "data/ssl/certificates/prime256v1-ecdsa-ee-by-2048-rsa-intermediate.pem",
2042    "data/ssl/certificates/prime256v1-ecdsa-ee-by-768-rsa-intermediate.pem",
2043    "data/ssl/certificates/prime256v1-ecdsa-ee-by-prime256v1-ecdsa-intermediate.pem",
2044    "data/ssl/certificates/prime256v1-ecdsa-intermediate.pem",
2045    "data/ssl/certificates/punycodetest.pem",
2046    "data/ssl/certificates/quic-chain.pem",
2047    "data/ssl/certificates/quic-leaf-cert.key",
2048    "data/ssl/certificates/quic-leaf-cert.key.pkcs8.pem",
2049    "data/ssl/certificates/quic-leaf-cert.key.sct",
2050    "data/ssl/certificates/quic-root.pem",
2051    "data/ssl/certificates/redundant-server-chain.pem",
2052    "data/ssl/certificates/redundant-validated-chain-root.pem",
2053    "data/ssl/certificates/redundant-validated-chain.pem",
2054    "data/ssl/certificates/reject_intranet_hosts.pem",
2055    "data/ssl/certificates/root_ca_cert.pem",
2056    "data/ssl/certificates/salesforce_com_test.pem",
2057    "data/ssl/certificates/self-signed-invalid-name.pem",
2058    "data/ssl/certificates/self-signed-invalid-sig.pem",
2059    "data/ssl/certificates/sha1_2016.pem",
2060    "data/ssl/certificates/sha1_leaf.pem",
2061    "data/ssl/certificates/spdy_pooling.pem",
2062    "data/ssl/certificates/start_after_expiry.pem",
2063    "data/ssl/certificates/subjectAltName_sanity_check.pem",
2064    "data/ssl/certificates/subjectAltName_www_example_com.pem",
2065    "data/ssl/certificates/test_names.pem",
2066    "data/ssl/certificates/thawte.single.pem",
2067    "data/ssl/certificates/tls_feature_extension.pem",
2068    "data/ssl/certificates/treadclimber.pem",
2069    "data/ssl/certificates/treadclimber.sctlist",
2070    "data/ssl/certificates/unescaped.pem",
2071    "data/ssl/certificates/unittest.key.bin",
2072    "data/ssl/certificates/unittest.selfsigned.der",
2073    "data/ssl/certificates/verisign_class3_g5_crosssigned-trusted.keychain",
2074    "data/ssl/certificates/verisign_class3_g5_crosssigned.pem",
2075    "data/ssl/certificates/verisign_intermediate_ca_2011.pem",
2076    "data/ssl/certificates/verisign_intermediate_ca_2016.pem",
2077    "data/ssl/certificates/weak_digest_md2_ee.pem",
2078    "data/ssl/certificates/weak_digest_md2_intermediate.pem",
2079    "data/ssl/certificates/weak_digest_md2_root.pem",
2080    "data/ssl/certificates/weak_digest_md4_ee.pem",
2081    "data/ssl/certificates/weak_digest_md4_intermediate.pem",
2082    "data/ssl/certificates/weak_digest_md4_root.pem",
2083    "data/ssl/certificates/weak_digest_md5_ee.pem",
2084    "data/ssl/certificates/weak_digest_md5_intermediate.pem",
2085    "data/ssl/certificates/weak_digest_md5_root.pem",
2086    "data/ssl/certificates/weak_digest_sha1_ee.pem",
2087    "data/ssl/certificates/weak_digest_sha1_intermediate.pem",
2088    "data/ssl/certificates/weak_digest_sha1_root.pem",
2089    "data/ssl/certificates/websocket_cacert.pem",
2090    "data/ssl/certificates/websocket_client_cert.p12",
2091    "data/ssl/certificates/wildcard.pem",
2092    "data/ssl/certificates/www.ahrn.com.pem",
2093    "data/ssl/certificates/x509_verify_results.chain.pem",
2094  ]
2095  outputs = [ "{{bundle_resources_dir}}/" +
2096              "{{source_root_relative_dir}}/{{source_file_part}}" ]
2097}
2098
2099static_library("test_support") {
2100  testonly = true
2101  sources = [
2102    "base/load_timing_info_test_util.cc",
2103    "base/load_timing_info_test_util.h",
2104    "base/mock_file_stream.cc",
2105    "base/mock_file_stream.h",
2106    "base/mock_network_change_notifier.cc",
2107    "base/mock_network_change_notifier.h",
2108    "base/test_completion_callback.cc",
2109    "base/test_completion_callback.h",
2110    "cert/mock_cert_verifier.cc",
2111    "cert/mock_cert_verifier.h",
2112    "cert/mock_client_cert_verifier.cc",
2113    "cert/mock_client_cert_verifier.h",
2114    "cookies/canonical_cookie_test_helpers.h",
2115    "cookies/cookie_change_dispatcher_test_helpers.cc",
2116    "cookies/cookie_change_dispatcher_test_helpers.h",
2117    "cookies/cookie_monster_store_test.cc",
2118    "cookies/cookie_monster_store_test.h",
2119    "cookies/cookie_store_change_unittest.h",
2120    "cookies/cookie_store_test_callbacks.cc",
2121    "cookies/cookie_store_test_callbacks.h",
2122    "cookies/cookie_store_test_helpers.cc",
2123    "cookies/cookie_store_test_helpers.h",
2124    "cookies/cookie_store_unittest.h",
2125    "cookies/test_cookie_access_delegate.cc",
2126    "cookies/test_cookie_access_delegate.h",
2127    "disk_cache/disk_cache_test_base.cc",
2128    "disk_cache/disk_cache_test_base.h",
2129    "disk_cache/disk_cache_test_util.cc",
2130    "disk_cache/disk_cache_test_util.h",
2131    "filter/filter_source_stream_test_util.cc",
2132    "filter/filter_source_stream_test_util.h",
2133    "filter/mock_source_stream.cc",
2134    "filter/mock_source_stream.h",
2135    "http/http_stream_factory_test_util.cc",
2136    "http/http_stream_factory_test_util.h",
2137    "http/http_transaction_test_util.cc",
2138    "http/http_transaction_test_util.h",
2139    "http/mock_http_cache.cc",
2140    "http/mock_http_cache.h",
2141    "http/transport_security_state_test_util.cc",
2142    "http/transport_security_state_test_util.h",
2143    "log/test_net_log.cc",
2144    "log/test_net_log.h",
2145    "log/test_net_log_util.cc",
2146    "log/test_net_log_util.h",
2147    "nqe/network_quality_estimator_test_util.cc",
2148    "nqe/network_quality_estimator_test_util.h",
2149    "proxy_resolution/mock_pac_file_fetcher.cc",
2150    "proxy_resolution/mock_pac_file_fetcher.h",
2151    "proxy_resolution/mock_proxy_resolver.cc",
2152    "proxy_resolution/mock_proxy_resolver.h",
2153    "proxy_resolution/proxy_config_service_common_unittest.cc",
2154    "proxy_resolution/proxy_config_service_common_unittest.h",
2155    "quic/quic_test_packet_printer.cc",
2156    "quic/quic_test_packet_printer.h",
2157    "socket/read_buffering_stream_socket.cc",
2158    "socket/read_buffering_stream_socket.h",
2159    "socket/socket_test_util.cc",
2160    "socket/socket_test_util.h",
2161    "spdy/spdy_test_util_common.cc",
2162    "spdy/spdy_test_util_common.h",
2163    "ssl/client_cert_identity_test_util.cc",
2164    "ssl/client_cert_identity_test_util.h",
2165    "ssl/ssl_private_key_test_util.cc",
2166    "ssl/ssl_private_key_test_util.h",
2167    "ssl/test_ssl_config_service.cc",
2168    "ssl/test_ssl_config_service.h",
2169    "ssl/test_ssl_private_key.cc",
2170    "ssl/test_ssl_private_key.h",
2171    "test/cert_builder.cc",
2172    "test/cert_builder.h",
2173    "test/cert_test_util.cc",
2174    "test/cert_test_util.h",
2175    "test/ct_test_util.cc",
2176    "test/ct_test_util.h",
2177    "test/embedded_test_server/controllable_http_response.cc",
2178    "test/embedded_test_server/controllable_http_response.h",
2179    "test/embedded_test_server/default_handlers.cc",
2180    "test/embedded_test_server/default_handlers.h",
2181    "test/embedded_test_server/embedded_test_server.cc",
2182    "test/embedded_test_server/embedded_test_server.h",
2183    "test/embedded_test_server/embedded_test_server_connection_listener.h",
2184    "test/embedded_test_server/http_connection.cc",
2185    "test/embedded_test_server/http_connection.h",
2186    "test/embedded_test_server/http_request.cc",
2187    "test/embedded_test_server/http_request.h",
2188    "test/embedded_test_server/http_response.cc",
2189    "test/embedded_test_server/http_response.h",
2190    "test/embedded_test_server/request_handler_util.cc",
2191    "test/embedded_test_server/request_handler_util.h",
2192    "test/embedded_test_server/simple_connection_listener.cc",
2193    "test/embedded_test_server/simple_connection_listener.h",
2194    "test/event_waiter.h",
2195    "test/gtest_util.h",
2196    "test/key_util.cc",
2197    "test/key_util.h",
2198    "test/net_test_suite.cc",
2199    "test/net_test_suite.h",
2200    "test/quic_simple_test_server.cc",
2201    "test/quic_simple_test_server.h",
2202    "test/scoped_disable_exit_on_dfatal.cc",
2203    "test/scoped_disable_exit_on_dfatal.h",
2204    "test/tcp_socket_proxy.cc",
2205    "test/tcp_socket_proxy.h",
2206    "test/test_certificate_data.h",
2207    "test/test_data_directory.cc",
2208    "test/test_data_directory.h",
2209    "test/test_with_task_environment.h",
2210    "test/url_request/ssl_certificate_error_job.cc",
2211    "test/url_request/ssl_certificate_error_job.h",
2212    "test/url_request/url_request_failed_job.cc",
2213    "test/url_request/url_request_failed_job.h",
2214    "test/url_request/url_request_hanging_read_job.cc",
2215    "test/url_request/url_request_hanging_read_job.h",
2216    "test/url_request/url_request_mock_data_job.cc",
2217    "test/url_request/url_request_mock_data_job.h",
2218    "test/url_request/url_request_slow_download_job.cc",
2219    "test/url_request/url_request_slow_download_job.h",
2220    "url_request/test_url_fetcher_factory.cc",
2221    "url_request/test_url_fetcher_factory.h",
2222    "url_request/url_request_test_util.cc",
2223    "url_request/url_request_test_util.h",
2224  ]
2225
2226  if (is_mac) {
2227    sources += [
2228      "test/keychain_test_util_mac.cc",
2229      "test/keychain_test_util_mac.h",
2230    ]
2231  }
2232
2233  configs += [ "//build/config:precompiled_headers" ]
2234
2235  public_deps = [
2236    "//base",
2237    "//base/test:test_support",
2238    "//crypto",
2239    "//net",
2240    "//net/dns:test_support",
2241    "//net/tools/tld_cleanup",
2242    "//net/traffic_annotation:test_support",
2243    "//testing/gmock",
2244    "//testing/gtest",
2245    "//url",
2246  ]
2247
2248  deps = [
2249    ":simple_quic_tools",
2250    "//net/http:transport_security_state_unittest_data_default",
2251    "//third_party/zlib",
2252  ]
2253
2254  allow_circular_includes_from = [ "//net/dns:test_support" ]
2255
2256  data = [ "data/" ]
2257
2258  if (is_mac) {
2259    libs = [ "Security.framework" ]
2260  }
2261
2262  if (is_ios) {
2263    deps += [ ":test_support_bundle_data" ]
2264  } else {
2265    public_deps += [ "//third_party/protobuf:py_proto_runtime" ]
2266  }
2267
2268  if (use_nss_certs) {
2269    public_deps += [ "//crypto:platform" ]
2270  }
2271
2272  if (!is_ios) {
2273    sources += [
2274      "test/spawned_test_server/base_test_server.cc",
2275      "test/spawned_test_server/base_test_server.h",
2276      "test/spawned_test_server/spawned_test_server.h",
2277    ]
2278  }
2279
2280  public_configs = [ ":net_test_config" ]
2281
2282  if (use_remote_test_server) {
2283    sources += [
2284      "test/spawned_test_server/remote_test_server.cc",
2285      "test/spawned_test_server/remote_test_server.h",
2286      "test/spawned_test_server/remote_test_server_config.cc",
2287      "test/spawned_test_server/remote_test_server_config.h",
2288      "test/spawned_test_server/remote_test_server_spawner_request.cc",
2289      "test/spawned_test_server/remote_test_server_spawner_request.h",
2290    ]
2291  } else if (!is_ios) {
2292    sources += [
2293      "test/spawned_test_server/local_test_server.cc",
2294      "test/spawned_test_server/local_test_server.h",
2295    ]
2296    if (is_win) {
2297      sources += [ "test/spawned_test_server/local_test_server_win.cc" ]
2298    } else if (is_posix || is_fuchsia) {
2299      sources += [ "test/spawned_test_server/local_test_server_posix.cc" ]
2300    }
2301  }
2302
2303  if (enable_python_utils) {
2304    sources += [
2305      "test/python_utils.cc",
2306      "test/python_utils.h",
2307    ]
2308  }
2309
2310  if (use_nss_certs) {
2311    sources += [ "test/cert_test_util_nss.cc" ]
2312  }
2313
2314  if (!disable_file_support) {
2315    sources += [
2316      "test/url_request/url_request_mock_http_job.cc",
2317      "test/url_request/url_request_mock_http_job.h",
2318      "test/url_request/url_request_test_job_backed_by_file.cc",
2319      "test/url_request/url_request_test_job_backed_by_file.h",
2320    ]
2321  }
2322
2323  if (enable_reporting) {
2324    sources += [
2325      "network_error_logging/mock_persistent_nel_store.cc",
2326      "network_error_logging/mock_persistent_nel_store.h",
2327      "network_error_logging/network_error_logging_test_util.cc",
2328      "network_error_logging/network_error_logging_test_util.h",
2329      "reporting/mock_persistent_reporting_store.cc",
2330      "reporting/mock_persistent_reporting_store.h",
2331      "reporting/reporting_test_util.cc",
2332      "reporting/reporting_test_util.h",
2333    ]
2334  }
2335}
2336
2337if (!is_ios && !is_android) {
2338  executable("cert_verify_tool") {
2339    testonly = true
2340    sources = [
2341      "tools/cert_verify_tool/cert_verify_tool.cc",
2342      "tools/cert_verify_tool/cert_verify_tool_util.cc",
2343      "tools/cert_verify_tool/cert_verify_tool_util.h",
2344      "tools/cert_verify_tool/verify_using_cert_verify_proc.cc",
2345      "tools/cert_verify_tool/verify_using_cert_verify_proc.h",
2346      "tools/cert_verify_tool/verify_using_path_builder.cc",
2347      "tools/cert_verify_tool/verify_using_path_builder.h",
2348    ]
2349
2350    deps = [
2351      ":net",
2352      ":test_support",
2353      "//base",
2354      "//build/win:default_exe_manifest",
2355    ]
2356
2357    if (is_mac) {
2358      libs = [ "Security.framework" ]
2359    }
2360  }
2361
2362  executable("crash_cache") {
2363    testonly = true
2364    sources = [ "tools/crash_cache/crash_cache.cc" ]
2365
2366    deps = [
2367      ":net",
2368      ":test_support",
2369      "//base",
2370      "//build/win:default_exe_manifest",
2371    ]
2372  }
2373
2374  executable("dns_fuzz_stub") {
2375    testonly = true
2376    sources = [ "tools/dns_fuzz_stub/dns_fuzz_stub.cc" ]
2377
2378    deps = [
2379      ":net",
2380      "//base",
2381      "//build/win:default_exe_manifest",
2382    ]
2383  }
2384
2385  executable("hpack_example_generator") {
2386    testonly = true
2387    sources = [ "spdy/fuzzing/hpack_example_generator.cc" ]
2388
2389    deps = [
2390      ":net",
2391      ":spdy_test_tools",
2392      "//base",
2393      "//build/win:default_exe_manifest",
2394    ]
2395  }
2396
2397  executable("net_watcher") {
2398    testonly = true
2399    sources = [ "tools/net_watcher/net_watcher.cc" ]
2400    deps = [
2401      ":net",
2402      "//base",
2403      "//build/win:default_exe_manifest",
2404    ]
2405  }
2406
2407  executable("run_testserver") {
2408    testonly = true
2409    sources = [ "tools/testserver/run_testserver.cc" ]
2410    deps = [
2411      ":test_support",
2412      "//base",
2413      "//base/test:test_support",
2414      "//build/win:default_exe_manifest",
2415      "//testing/gtest",
2416    ]
2417  }
2418
2419  executable("stress_cache") {
2420    testonly = true
2421    sources = [ "tools/stress_cache/stress_cache.cc" ]
2422
2423    deps = [
2424      ":net",
2425      ":test_support",
2426      "//base",
2427      "//build/win:default_exe_manifest",
2428    ]
2429  }
2430
2431  executable("tld_cleanup") {
2432    sources = [ "tools/tld_cleanup/tld_cleanup.cc" ]
2433
2434    deps = [
2435      "//base",
2436      "//base:i18n",
2437      "//build/win:default_exe_manifest",
2438      "//net/tools/tld_cleanup",
2439    ]
2440  }
2441}
2442
2443if (use_external_gssapi) {
2444  # In order for the tests to be reliable, these two targets cannot depend on a
2445  # valid GSSAPI library. This is easy to achieve on most platforms. But on
2446  # macOS care must be taken to not depend directly or indirectly on
2447  # GSS.framework. This is suprisingly easy to get wrong since
2448  # Security.framework is such a common dependency and it indirectly depends on
2449  # GSS.
2450  shared_library("test_gssapi") {
2451    testonly = true
2452    sources = [
2453      "tools/gssapi/gss_import_name.cc",
2454      "tools/gssapi/gss_methods.cc",
2455      "tools/gssapi/gss_types.h",
2456    ]
2457  }
2458
2459  shared_library("test_badgssapi") {
2460    testonly = true
2461    sources = [
2462      "tools/gssapi/gss_methods.cc",
2463      "tools/gssapi/gss_types.h",
2464    ]
2465  }
2466}
2467
2468if (is_linux || is_mac) {
2469  executable("cachetool") {
2470    testonly = true
2471    sources = [ "tools/cachetool/cachetool.cc" ]
2472    deps = [
2473      ":net",
2474      ":test_support",
2475      "//base",
2476    ]
2477  }
2478
2479  executable("content_decoder_tool") {
2480    testonly = true
2481    sources = [
2482      "tools/content_decoder_tool/content_decoder_tool.cc",
2483      "tools/content_decoder_tool/content_decoder_tool.h",
2484      "tools/content_decoder_tool/content_decoder_tool_bin.cc",
2485    ]
2486    deps = [
2487      ":net",
2488      ":test_support",
2489      "//base",
2490      "//url",
2491    ]
2492  }
2493}
2494
2495if (is_linux) {
2496  static_library("epoll_server") {
2497    sources = [
2498      "tools/epoll_server/platform/impl/epoll_bug_impl.h",
2499      "tools/epoll_server/platform/impl/epoll_export_impl.h",
2500      "tools/epoll_server/platform/impl/epoll_logging_impl.h",
2501      "tools/epoll_server/platform/impl/epoll_ptr_util_impl.h",
2502      "tools/epoll_server/platform/impl/epoll_thread_impl.h",
2503      "tools/epoll_server/platform/impl/epoll_time_impl.h",
2504    ]
2505    deps = [
2506      ":net",
2507      "//base",
2508    ]
2509    public_deps = [ "//net/third_party/quiche:epoll_server_core" ]
2510    allow_circular_includes_from =
2511        [ "//net/third_party/quiche:epoll_server_core" ]
2512  }
2513
2514  source_set("epoll_quic_tools") {
2515    sources = [
2516      "quic/platform/impl/quic_epoll_clock.cc",
2517      "quic/platform/impl/quic_epoll_clock.h",
2518      "quic/platform/impl/quic_linux_socket_utils.cc",
2519      "quic/platform/impl/quic_linux_socket_utils.h",
2520      "quic/platform/impl/quic_socket_utils.cc",
2521      "quic/platform/impl/quic_socket_utils.h",
2522      "quic/platform/impl/quic_stream_buffer_allocator_impl.h",
2523      "quic/platform/impl/quic_udp_socket_platform_impl.h",
2524    ]
2525    deps = [
2526      ":epoll_server",
2527      ":net",
2528      ":simple_quic_tools",
2529      "//base",
2530      "//base/third_party/dynamic_annotations",
2531      "//crypto",
2532      "//third_party/boringssl",
2533      "//url",
2534    ]
2535    public_deps = [ "//net/third_party/quiche:epoll_quic_tools_core" ]
2536    allow_circular_includes_from =
2537        [ "//net/third_party/quiche:epoll_quic_tools_core" ]
2538  }
2539}
2540
2541if (is_android) {
2542  generate_jni("net_jni_headers") {
2543    sources = [
2544      "android/java/src/org/chromium/net/AndroidCellularSignalStrength.java",
2545      "android/java/src/org/chromium/net/AndroidCertVerifyResult.java",
2546      "android/java/src/org/chromium/net/AndroidKeyStore.java",
2547      "android/java/src/org/chromium/net/AndroidNetworkLibrary.java",
2548      "android/java/src/org/chromium/net/AndroidTrafficStats.java",
2549      "android/java/src/org/chromium/net/DnsStatus.java",
2550      "android/java/src/org/chromium/net/GURLUtils.java",
2551      "android/java/src/org/chromium/net/HttpNegotiateAuthenticator.java",
2552      "android/java/src/org/chromium/net/HttpUtil.java",
2553      "android/java/src/org/chromium/net/NetStringUtil.java",
2554      "android/java/src/org/chromium/net/NetworkChangeNotifier.java",
2555      "android/java/src/org/chromium/net/ProxyChangeListener.java",
2556      "android/java/src/org/chromium/net/X509Util.java",
2557    ]
2558  }
2559  generate_jni("net_test_jni_headers") {
2560    testonly = true
2561    sources = [
2562      "android/javatests/src/org/chromium/net/AndroidKeyStoreTestUtil.java",
2563      "android/javatests/src/org/chromium/net/AndroidNetworkLibraryTestUtil.java",
2564      "android/javatests/src/org/chromium/net/AndroidProxyConfigServiceTestUtil.java",
2565      "test/android/javatests/src/org/chromium/net/test/DummySpnegoAuthenticator.java",
2566      "test/android/javatests/src/org/chromium/net/test/EmbeddedTestServerImpl.java",
2567    ]
2568  }
2569}
2570
2571if (is_android || is_linux) {
2572  executable("disk_cache_memory_test") {
2573    testonly = true
2574    sources = [ "tools/disk_cache_memory_test/disk_cache_memory_test.cc" ]
2575    deps = [
2576      ":net",
2577      "//base",
2578    ]
2579  }
2580}
2581
2582source_set("epoll_server_test_tools") {
2583  testonly = true
2584  sources = [
2585    "tools/epoll_server/platform/impl/epoll_address_test_utils_impl.h",
2586    "tools/epoll_server/platform/impl/epoll_expect_bug_impl.h",
2587    "tools/epoll_server/platform/impl/epoll_test_impl.h",
2588  ]
2589  deps = [
2590    ":net",
2591    ":test_support",
2592    "//base",
2593    "//testing/gmock",
2594    "//testing/gtest",
2595  ]
2596  public_deps = [ "//net/third_party/quiche:epoll_server_test_tools_core" ]
2597  allow_circular_includes_from =
2598      [ "//net/third_party/quiche:epoll_server_test_tools_core" ]
2599}
2600
2601source_set("spdy_test_tools") {
2602  testonly = true
2603  sources = [
2604    "spdy/fuzzing/hpack_fuzz_util.cc",
2605    "spdy/fuzzing/hpack_fuzz_util.h",
2606    "spdy/platform/impl/spdy_test_impl.h",
2607  ]
2608  deps = [
2609    ":net",
2610    "//base",
2611    "//testing/gmock",
2612    "//testing/gtest",
2613  ]
2614}
2615
2616source_set("quiche_test_tools") {
2617  testonly = true
2618  sources = [ "quiche/common/platform/impl/quiche_test_impl.h" ]
2619  deps = [
2620    ":net",
2621    "//testing/gmock",
2622    "//testing/gtest",
2623  ]
2624  public_deps = [ "//net/third_party/quiche:quiche_test_tools_core" ]
2625  allow_circular_includes_from =
2626      [ "//net/third_party/quiche:quiche_test_tools_core" ]
2627}
2628
2629source_set("quic_test_tools") {
2630  testonly = true
2631  sources = [
2632    "quic/crypto_test_utils_chromium.cc",
2633    "quic/mock_crypto_client_stream.cc",
2634    "quic/mock_crypto_client_stream.h",
2635    "quic/mock_crypto_client_stream_factory.cc",
2636    "quic/mock_crypto_client_stream_factory.h",
2637    "quic/mock_decrypter.cc",
2638    "quic/mock_decrypter.h",
2639    "quic/mock_encrypter.cc",
2640    "quic/mock_encrypter.h",
2641    "quic/mock_quic_context.cc",
2642    "quic/mock_quic_context.h",
2643    "quic/platform/impl/quic_epoll_test_tools_impl.h",
2644    "quic/platform/impl/quic_expect_bug_impl.h",
2645    "quic/platform/impl/quic_mock_log_impl.h",
2646    "quic/platform/impl/quic_port_utils_impl.cc",
2647    "quic/platform/impl/quic_port_utils_impl.h",
2648    "quic/platform/impl/quic_test_impl.cc",
2649    "quic/platform/impl/quic_test_impl.h",
2650    "quic/platform/impl/quic_test_loopback_impl.cc",
2651    "quic/platform/impl/quic_test_loopback_impl.h",
2652    "quic/platform/impl/quic_test_mem_slice_vector_impl.cc",
2653    "quic/platform/impl/quic_test_mem_slice_vector_impl.h",
2654    "quic/platform/impl/quic_test_output_impl.cc",
2655    "quic/platform/impl/quic_test_output_impl.h",
2656    "quic/test_task_runner.cc",
2657    "quic/test_task_runner.h",
2658  ]
2659  deps = [
2660    ":net",
2661    ":quiche_test_tools",
2662    ":simple_quic_tools",
2663    ":test_support",
2664    "//base",
2665    "//crypto:test_support",
2666    "//testing/gmock",
2667    "//testing/gtest",
2668    "//third_party/boringssl",
2669    "//third_party/protobuf:protobuf_lite",
2670    "//third_party/quic_trace:quic_trace_proto",
2671  ]
2672  public_deps = [ "//net/third_party/quiche:quic_test_tools_core" ]
2673  allow_circular_includes_from =
2674      [ "//net/third_party/quiche:quic_test_tools_core" ]
2675}
2676
2677source_set("simple_quic_tools") {
2678  sources = [
2679    "quic/platform/impl/quic_default_proof_providers_impl.cc",
2680    "quic/platform/impl/quic_default_proof_providers_impl.h",
2681    "quic/platform/impl/quic_system_event_loop_impl.h",
2682    "tools/quic/quic_client_message_loop_network_helper.cc",
2683    "tools/quic/quic_client_message_loop_network_helper.h",
2684    "tools/quic/quic_http_proxy_backend.cc",
2685    "tools/quic/quic_http_proxy_backend.h",
2686    "tools/quic/quic_http_proxy_backend_stream.cc",
2687    "tools/quic/quic_http_proxy_backend_stream.h",
2688    "tools/quic/quic_simple_client.cc",
2689    "tools/quic/quic_simple_client.h",
2690    "tools/quic/quic_simple_server.cc",
2691    "tools/quic/quic_simple_server.h",
2692    "tools/quic/quic_simple_server_packet_writer.cc",
2693    "tools/quic/quic_simple_server_packet_writer.h",
2694    "tools/quic/quic_simple_server_session_helper.cc",
2695    "tools/quic/quic_simple_server_session_helper.h",
2696    "tools/quic/quic_simple_server_socket.cc",
2697    "tools/quic/quic_simple_server_socket.h",
2698    "tools/quic/quic_transport_simple_server.cc",
2699    "tools/quic/quic_transport_simple_server.h",
2700    "tools/quic/synchronous_host_resolver.cc",
2701    "tools/quic/synchronous_host_resolver.h",
2702  ]
2703  deps = [
2704    ":net",
2705    "//base",
2706    "//base/third_party/dynamic_annotations",
2707    "//third_party/protobuf:protobuf_lite",
2708    "//url",
2709  ]
2710  public_deps = [ "//net/third_party/quiche:simple_quic_tools_core" ]
2711  allow_circular_includes_from =
2712      [ "//net/third_party/quiche:simple_quic_tools_core" ]
2713}
2714
2715if (!is_ios) {
2716  executable("quic_client") {
2717    sources = [ "tools/quic/quic_simple_client_bin.cc" ]
2718    deps = [
2719      ":net",
2720      ":simple_quic_tools",
2721      "//base",
2722      "//build/win:default_exe_manifest",
2723      "//url",
2724    ]
2725    public_deps = [ "//net/third_party/quiche:quic_client_core" ]
2726    allow_circular_includes_from =
2727        [ "//net/third_party/quiche:quic_client_core" ]
2728  }
2729  executable("quic_server") {
2730    sources = [
2731      "tools/quic/quic_simple_server_backend_factory.cc",
2732      "tools/quic/quic_simple_server_backend_factory.h",
2733      "tools/quic/quic_simple_server_bin.cc",
2734    ]
2735    deps = [
2736      ":net",
2737      ":simple_quic_tools",
2738      "//base",
2739      "//build/win:default_exe_manifest",
2740      "//third_party/boringssl",
2741      "//third_party/protobuf:protobuf_lite",
2742    ]
2743    public_deps = [ "//net/third_party/quiche:quic_server_core" ]
2744    allow_circular_includes_from =
2745        [ "//net/third_party/quiche:quic_server_core" ]
2746  }
2747  executable("quic_transport_simple_server") {
2748    sources = [ "tools/quic/quic_transport_simple_server_bin.cc" ]
2749    deps = [
2750      ":net",
2751      ":simple_quic_tools",
2752      "//base",
2753      "//build/win:default_exe_manifest",
2754      "//third_party/boringssl",
2755      "//third_party/protobuf:protobuf_lite",
2756    ]
2757  }
2758  executable("crypto_message_printer") {
2759    sources = [ "tools/quic/crypto_message_printer_bin.cc" ]
2760    deps = [
2761      ":net",
2762      "//base",
2763      "//build/win:default_exe_manifest",
2764    ]
2765  }
2766}
2767
2768# This section can be updated from globbing rules using:
2769#    python ./tools/update_ios_bundle_data.py
2770bundle_data("net_unittests_bundle_data") {
2771  testonly = true
2772  sources = [
2773    "data/cert_issuer_source_aia_unittest/i.pem",
2774    "data/cert_issuer_source_aia_unittest/i2.pem",
2775    "data/cert_issuer_source_aia_unittest/i3.pem",
2776    "data/cert_issuer_source_aia_unittest/root.pem",
2777    "data/cert_issuer_source_aia_unittest/target_file_aia.pem",
2778    "data/cert_issuer_source_aia_unittest/target_file_and_http_aia.pem",
2779    "data/cert_issuer_source_aia_unittest/target_invalid_and_http_aia.pem",
2780    "data/cert_issuer_source_aia_unittest/target_invalid_url_aia.pem",
2781    "data/cert_issuer_source_aia_unittest/target_no_aia.pem",
2782    "data/cert_issuer_source_aia_unittest/target_one_aia.pem",
2783    "data/cert_issuer_source_aia_unittest/target_six_aia.pem",
2784    "data/cert_issuer_source_aia_unittest/target_three_aia.pem",
2785    "data/cert_issuer_source_aia_unittest/target_two_aia.pem",
2786    "data/cert_issuer_source_static_unittest/c1.pem",
2787    "data/cert_issuer_source_static_unittest/c2.pem",
2788    "data/cert_issuer_source_static_unittest/d.pem",
2789    "data/cert_issuer_source_static_unittest/e1.pem",
2790    "data/cert_issuer_source_static_unittest/e2.pem",
2791    "data/cert_issuer_source_static_unittest/i1_1.pem",
2792    "data/cert_issuer_source_static_unittest/i1_2.pem",
2793    "data/cert_issuer_source_static_unittest/i2.pem",
2794    "data/cert_issuer_source_static_unittest/i3_1.pem",
2795    "data/cert_issuer_source_static_unittest/i3_2.pem",
2796    "data/cert_issuer_source_static_unittest/root.pem",
2797    "data/certificate_policies_unittest/anypolicy.pem",
2798    "data/certificate_policies_unittest/anypolicy_with_qualifier.pem",
2799    "data/certificate_policies_unittest/invalid-anypolicy_with_custom_qualifier.pem",
2800    "data/certificate_policies_unittest/invalid-empty.pem",
2801    "data/certificate_policies_unittest/invalid-policy_1_2_3_dupe.pem",
2802    "data/certificate_policies_unittest/invalid-policy_1_2_3_policyinformation_unconsumed_data.pem",
2803    "data/certificate_policies_unittest/invalid-policy_1_2_3_policyqualifierinfo_unconsumed_data.pem",
2804    "data/certificate_policies_unittest/invalid-policy_1_2_3_with_empty_qualifiers_sequence.pem",
2805    "data/certificate_policies_unittest/invalid-policy_identifier_not_oid.pem",
2806    "data/certificate_policies_unittest/policy_1_2_3.pem",
2807    "data/certificate_policies_unittest/policy_1_2_3_and_1_2_4.pem",
2808    "data/certificate_policies_unittest/policy_1_2_3_and_1_2_4_with_qualifiers.pem",
2809    "data/certificate_policies_unittest/policy_1_2_3_with_custom_qualifier.pem",
2810    "data/certificate_policies_unittest/policy_1_2_3_with_qualifier.pem",
2811    "data/crl_unittest/bad_crldp_has_crlissuer.pem",
2812    "data/crl_unittest/bad_fake_critical_crlentryextension.pem",
2813    "data/crl_unittest/bad_fake_critical_extension.pem",
2814    "data/crl_unittest/bad_idp_contains_wrong_uri.pem",
2815    "data/crl_unittest/bad_idp_indirectcrl.pem",
2816    "data/crl_unittest/bad_idp_onlycontainscacerts.pem",
2817    "data/crl_unittest/bad_idp_onlycontainscacerts_no_basic_constraints.pem",
2818    "data/crl_unittest/bad_idp_onlycontainsusercerts.pem",
2819    "data/crl_unittest/bad_idp_uri_and_onlycontainscacerts.pem",
2820    "data/crl_unittest/bad_idp_uri_and_onlycontainsusercerts.pem",
2821    "data/crl_unittest/bad_key_rollover_signature.pem",
2822    "data/crl_unittest/bad_nextupdate_too_old.pem",
2823    "data/crl_unittest/bad_signature.pem",
2824    "data/crl_unittest/bad_thisupdate_in_future.pem",
2825    "data/crl_unittest/bad_thisupdate_too_old.pem",
2826    "data/crl_unittest/bad_wrong_issuer.pem",
2827    "data/crl_unittest/good.pem",
2828    "data/crl_unittest/good_fake_extension.pem",
2829    "data/crl_unittest/good_fake_extension_no_nextupdate.pem",
2830    "data/crl_unittest/good_generalizedtime.pem",
2831    "data/crl_unittest/good_idp_contains_uri.pem",
2832    "data/crl_unittest/good_idp_onlycontainscacerts.pem",
2833    "data/crl_unittest/good_idp_onlycontainsusercerts.pem",
2834    "data/crl_unittest/good_idp_onlycontainsusercerts_no_basic_constraints.pem",
2835    "data/crl_unittest/good_idp_uri_and_onlycontainscacerts.pem",
2836    "data/crl_unittest/good_idp_uri_and_onlycontainsusercerts.pem",
2837    "data/crl_unittest/good_issuer_name_normalization.pem",
2838    "data/crl_unittest/good_issuer_no_keyusage.pem",
2839    "data/crl_unittest/good_key_rollover.pem",
2840    "data/crl_unittest/good_no_crldp.pem",
2841    "data/crl_unittest/good_no_nextupdate.pem",
2842    "data/crl_unittest/good_no_version.pem",
2843    "data/crl_unittest/invalid_garbage_after_crlentryextensions.pem",
2844    "data/crl_unittest/invalid_garbage_after_extensions.pem",
2845    "data/crl_unittest/invalid_garbage_after_nextupdate.pem",
2846    "data/crl_unittest/invalid_garbage_after_revocationdate.pem",
2847    "data/crl_unittest/invalid_garbage_after_revokedcerts.pem",
2848    "data/crl_unittest/invalid_garbage_after_signaturevalue.pem",
2849    "data/crl_unittest/invalid_garbage_after_thisupdate.pem",
2850    "data/crl_unittest/invalid_garbage_crlentry.pem",
2851    "data/crl_unittest/invalid_garbage_issuer_name.pem",
2852    "data/crl_unittest/invalid_garbage_revocationdate.pem",
2853    "data/crl_unittest/invalid_garbage_revoked_serial_number.pem",
2854    "data/crl_unittest/invalid_garbage_signaturealgorithm.pem",
2855    "data/crl_unittest/invalid_garbage_signaturevalue.pem",
2856    "data/crl_unittest/invalid_garbage_tbs_signature_algorithm.pem",
2857    "data/crl_unittest/invalid_garbage_tbscertlist.pem",
2858    "data/crl_unittest/invalid_garbage_thisupdate.pem",
2859    "data/crl_unittest/invalid_garbage_version.pem",
2860    "data/crl_unittest/invalid_idp_dpname_choice_extra_data.pem",
2861    "data/crl_unittest/invalid_idp_empty_sequence.pem",
2862    "data/crl_unittest/invalid_idp_onlycontains_user_and_ca_certs.pem",
2863    "data/crl_unittest/invalid_idp_onlycontainsusercerts_v1_leaf.pem",
2864    "data/crl_unittest/invalid_issuer_keyusage_no_crlsign.pem",
2865    "data/crl_unittest/invalid_key_rollover_issuer_keyusage_no_crlsign.pem",
2866    "data/crl_unittest/invalid_mismatched_signature_algorithm.pem",
2867    "data/crl_unittest/invalid_revoked_empty_sequence.pem",
2868    "data/crl_unittest/invalid_v1_explicit.pem",
2869    "data/crl_unittest/invalid_v1_with_crlentryextension.pem",
2870    "data/crl_unittest/invalid_v1_with_extension.pem",
2871    "data/crl_unittest/invalid_v3.pem",
2872    "data/crl_unittest/revoked.pem",
2873    "data/crl_unittest/revoked_fake_crlentryextension.pem",
2874    "data/crl_unittest/revoked_generalized_revocationdate.pem",
2875    "data/crl_unittest/revoked_key_rollover.pem",
2876    "data/crl_unittest/revoked_no_nextupdate.pem",
2877    "data/embedded_test_server/mock-headers-without-crlf.html",
2878    "data/embedded_test_server/mock-headers-without-crlf.html.mock-http-headers",
2879    "data/filter_unittests/google.br",
2880    "data/filter_unittests/google.txt",
2881    "data/name_constraints_unittest/directoryname-excludeall.pem",
2882    "data/name_constraints_unittest/directoryname-excluded.pem",
2883    "data/name_constraints_unittest/directoryname.pem",
2884    "data/name_constraints_unittest/directoryname_and_dnsname.pem",
2885    "data/name_constraints_unittest/directoryname_and_dnsname_and_ipaddress.pem",
2886    "data/name_constraints_unittest/dnsname-exclude_dot.pem",
2887    "data/name_constraints_unittest/dnsname-excludeall.pem",
2888    "data/name_constraints_unittest/dnsname-excluded.pem",
2889    "data/name_constraints_unittest/dnsname-excluded_with_leading_dot.pem",
2890    "data/name_constraints_unittest/dnsname-permitted_two_dot.pem",
2891    "data/name_constraints_unittest/dnsname-permitted_with_leading_dot.pem",
2892    "data/name_constraints_unittest/dnsname-with_max.pem",
2893    "data/name_constraints_unittest/dnsname-with_min_0.pem",
2894    "data/name_constraints_unittest/dnsname-with_min_0_and_max.pem",
2895    "data/name_constraints_unittest/dnsname-with_min_1.pem",
2896    "data/name_constraints_unittest/dnsname-with_min_1_and_max.pem",
2897    "data/name_constraints_unittest/dnsname.pem",
2898    "data/name_constraints_unittest/dnsname2.pem",
2899    "data/name_constraints_unittest/edipartyname-excluded.pem",
2900    "data/name_constraints_unittest/edipartyname-permitted.pem",
2901    "data/name_constraints_unittest/invalid-empty_excluded_subtree.pem",
2902    "data/name_constraints_unittest/invalid-empty_permitted_subtree.pem",
2903    "data/name_constraints_unittest/invalid-no_subtrees.pem",
2904    "data/name_constraints_unittest/ipaddress-excludeall.pem",
2905    "data/name_constraints_unittest/ipaddress-excluded.pem",
2906    "data/name_constraints_unittest/ipaddress-invalid_addr.pem",
2907    "data/name_constraints_unittest/ipaddress-invalid_mask_not_contiguous_1.pem",
2908    "data/name_constraints_unittest/ipaddress-invalid_mask_not_contiguous_2.pem",
2909    "data/name_constraints_unittest/ipaddress-invalid_mask_not_contiguous_3.pem",
2910    "data/name_constraints_unittest/ipaddress-invalid_mask_not_contiguous_4.pem",
2911    "data/name_constraints_unittest/ipaddress-permit_all.pem",
2912    "data/name_constraints_unittest/ipaddress-permit_prefix1.pem",
2913    "data/name_constraints_unittest/ipaddress-permit_prefix31.pem",
2914    "data/name_constraints_unittest/ipaddress-permit_singlehost.pem",
2915    "data/name_constraints_unittest/ipaddress.pem",
2916    "data/name_constraints_unittest/name-ca.pem",
2917    "data/name_constraints_unittest/name-de.pem",
2918    "data/name_constraints_unittest/name-empty.pem",
2919    "data/name_constraints_unittest/name-jp-tokyo.pem",
2920    "data/name_constraints_unittest/name-jp.pem",
2921    "data/name_constraints_unittest/name-us-arizona-1.1.1.1.pem",
2922    "data/name_constraints_unittest/name-us-arizona-192.168.1.1.pem",
2923    "data/name_constraints_unittest/name-us-arizona-email.pem",
2924    "data/name_constraints_unittest/name-us-arizona-foo.com.pem",
2925    "data/name_constraints_unittest/name-us-arizona-ipv6.pem",
2926    "data/name_constraints_unittest/name-us-arizona-permitted.example.com.pem",
2927    "data/name_constraints_unittest/name-us-arizona.pem",
2928    "data/name_constraints_unittest/name-us-california-192.168.1.1.pem",
2929    "data/name_constraints_unittest/name-us-california-mountain_view.pem",
2930    "data/name_constraints_unittest/name-us-california-permitted.example.com.pem",
2931    "data/name_constraints_unittest/name-us-california.pem",
2932    "data/name_constraints_unittest/name-us.pem",
2933    "data/name_constraints_unittest/othername-excluded.pem",
2934    "data/name_constraints_unittest/othername-permitted.pem",
2935    "data/name_constraints_unittest/registeredid-excluded.pem",
2936    "data/name_constraints_unittest/registeredid-permitted.pem",
2937    "data/name_constraints_unittest/rfc822name-excluded.pem",
2938    "data/name_constraints_unittest/rfc822name-permitted.pem",
2939    "data/name_constraints_unittest/san-directoryname.pem",
2940    "data/name_constraints_unittest/san-dnsname.pem",
2941    "data/name_constraints_unittest/san-edipartyname.pem",
2942    "data/name_constraints_unittest/san-excluded-directoryname.pem",
2943    "data/name_constraints_unittest/san-excluded-dnsname.pem",
2944    "data/name_constraints_unittest/san-excluded-ipaddress.pem",
2945    "data/name_constraints_unittest/san-invalid-empty.pem",
2946    "data/name_constraints_unittest/san-invalid-ipaddress.pem",
2947    "data/name_constraints_unittest/san-ipaddress4.pem",
2948    "data/name_constraints_unittest/san-ipaddress6.pem",
2949    "data/name_constraints_unittest/san-othername.pem",
2950    "data/name_constraints_unittest/san-permitted.pem",
2951    "data/name_constraints_unittest/san-registeredid.pem",
2952    "data/name_constraints_unittest/san-rfc822name.pem",
2953    "data/name_constraints_unittest/san-uri.pem",
2954    "data/name_constraints_unittest/san-x400address.pem",
2955    "data/name_constraints_unittest/uri-excluded.pem",
2956    "data/name_constraints_unittest/uri-permitted.pem",
2957    "data/name_constraints_unittest/x400address-excluded.pem",
2958    "data/name_constraints_unittest/x400address-permitted.pem",
2959    "data/ocsp_unittest/bad_ocsp_type.pem",
2960    "data/ocsp_unittest/bad_signature.pem",
2961    "data/ocsp_unittest/bad_status.pem",
2962    "data/ocsp_unittest/good_response.pem",
2963    "data/ocsp_unittest/good_response_next_update.pem",
2964    "data/ocsp_unittest/good_response_sha256.pem",
2965    "data/ocsp_unittest/has_critical_ct_extension.pem",
2966    "data/ocsp_unittest/has_critical_response_extension.pem",
2967    "data/ocsp_unittest/has_critical_single_extension.pem",
2968    "data/ocsp_unittest/has_extension.pem",
2969    "data/ocsp_unittest/has_single_extension.pem",
2970    "data/ocsp_unittest/has_version.pem",
2971    "data/ocsp_unittest/malformed_request.pem",
2972    "data/ocsp_unittest/missing_response.pem",
2973    "data/ocsp_unittest/multiple_response.pem",
2974    "data/ocsp_unittest/no_response.pem",
2975    "data/ocsp_unittest/ocsp_extra_certs.pem",
2976    "data/ocsp_unittest/ocsp_sign_bad_indirect.pem",
2977    "data/ocsp_unittest/ocsp_sign_direct.pem",
2978    "data/ocsp_unittest/ocsp_sign_indirect.pem",
2979    "data/ocsp_unittest/ocsp_sign_indirect_missing.pem",
2980    "data/ocsp_unittest/other_response.pem",
2981    "data/ocsp_unittest/responder_id.pem",
2982    "data/ocsp_unittest/responder_name.pem",
2983    "data/ocsp_unittest/revoke_response.pem",
2984    "data/ocsp_unittest/revoke_response_reason.pem",
2985    "data/ocsp_unittest/unknown_response.pem",
2986    "data/ov_name_constraints/int-bmp-o1.pem",
2987    "data/ov_name_constraints/int-cn.pem",
2988    "data/ov_name_constraints/int-o1-o2.pem",
2989    "data/ov_name_constraints/int-o1-plus-o2.pem",
2990    "data/ov_name_constraints/int-o2-o1.pem",
2991    "data/ov_name_constraints/int-o3.pem",
2992    "data/ov_name_constraints/leaf-no-o.pem",
2993    "data/ov_name_constraints/leaf-o1-o2.pem",
2994    "data/ov_name_constraints/leaf-o1.pem",
2995    "data/ov_name_constraints/nc-int-exclude-o1.pem",
2996    "data/ov_name_constraints/nc-int-permit-bmp-o1.pem",
2997    "data/ov_name_constraints/nc-int-permit-cn.pem",
2998    "data/ov_name_constraints/nc-int-permit-dns.pem",
2999    "data/ov_name_constraints/nc-int-permit-o1.pem",
3000    "data/ov_name_constraints/nc-int-permit-o2-o1-o3.pem",
3001    "data/ov_name_constraints/root.pem",
3002    "data/parse_certificate_unittest/authority_key_identifier/empty_sequence.pem",
3003    "data/parse_certificate_unittest/authority_key_identifier/extra_contents_after_extension_sequence.pem",
3004    "data/parse_certificate_unittest/authority_key_identifier/extra_contents_after_issuer_and_serial.pem",
3005    "data/parse_certificate_unittest/authority_key_identifier/invalid_contents.pem",
3006    "data/parse_certificate_unittest/authority_key_identifier/invalid_issuer.pem",
3007    "data/parse_certificate_unittest/authority_key_identifier/invalid_key_identifier.pem",
3008    "data/parse_certificate_unittest/authority_key_identifier/invalid_serial.pem",
3009    "data/parse_certificate_unittest/authority_key_identifier/issuer_and_serial.pem",
3010    "data/parse_certificate_unittest/authority_key_identifier/issuer_only.pem",
3011    "data/parse_certificate_unittest/authority_key_identifier/key_identifier.pem",
3012    "data/parse_certificate_unittest/authority_key_identifier/key_identifier_and_issuer_and_serial.pem",
3013    "data/parse_certificate_unittest/authority_key_identifier/serial_only.pem",
3014    "data/parse_certificate_unittest/authority_key_identifier/url_issuer_and_serial.pem",
3015    "data/parse_certificate_unittest/authority_key_identifier_not_sequence.pem",
3016    "data/parse_certificate_unittest/bad_key_usage.pem",
3017    "data/parse_certificate_unittest/bad_policy_qualifiers.pem",
3018    "data/parse_certificate_unittest/bad_signature_algorithm_oid.pem",
3019    "data/parse_certificate_unittest/bad_validity.pem",
3020    "data/parse_certificate_unittest/basic_constraints_ca_false.pem",
3021    "data/parse_certificate_unittest/basic_constraints_ca_no_path.pem",
3022    "data/parse_certificate_unittest/basic_constraints_ca_path_9.pem",
3023    "data/parse_certificate_unittest/basic_constraints_negative_path.pem",
3024    "data/parse_certificate_unittest/basic_constraints_not_ca.pem",
3025    "data/parse_certificate_unittest/basic_constraints_path_too_large.pem",
3026    "data/parse_certificate_unittest/basic_constraints_pathlen_255.pem",
3027    "data/parse_certificate_unittest/basic_constraints_pathlen_256.pem",
3028    "data/parse_certificate_unittest/basic_constraints_pathlen_not_ca.pem",
3029    "data/parse_certificate_unittest/basic_constraints_unconsumed_data.pem",
3030    "data/parse_certificate_unittest/cert_algorithm_not_sequence.pem",
3031    "data/parse_certificate_unittest/cert_data_after_signature.pem",
3032    "data/parse_certificate_unittest/cert_empty_sequence.pem",
3033    "data/parse_certificate_unittest/cert_missing_signature.pem",
3034    "data/parse_certificate_unittest/cert_not_sequence.pem",
3035    "data/parse_certificate_unittest/cert_signature_not_bit_string.pem",
3036    "data/parse_certificate_unittest/cert_skeleton.pem",
3037    "data/parse_certificate_unittest/cert_version3.pem",
3038    "data/parse_certificate_unittest/crldp_1uri_noissuer.pem",
3039    "data/parse_certificate_unittest/crldp_3uri_noissuer.pem",
3040    "data/parse_certificate_unittest/crldp_full_name_as_dirname.pem",
3041    "data/parse_certificate_unittest/crldp_issuer_as_dirname.pem",
3042    "data/parse_certificate_unittest/extended_key_usage.pem",
3043    "data/parse_certificate_unittest/extension_critical.pem",
3044    "data/parse_certificate_unittest/extension_critical_0.pem",
3045    "data/parse_certificate_unittest/extension_critical_3.pem",
3046    "data/parse_certificate_unittest/extension_not_critical.pem",
3047    "data/parse_certificate_unittest/extensions_data_after_sequence.pem",
3048    "data/parse_certificate_unittest/extensions_duplicate_key_usage.pem",
3049    "data/parse_certificate_unittest/extensions_empty_sequence.pem",
3050    "data/parse_certificate_unittest/extensions_not_sequence.pem",
3051    "data/parse_certificate_unittest/extensions_real.pem",
3052    "data/parse_certificate_unittest/failed_signature_algorithm.pem",
3053    "data/parse_certificate_unittest/inhibit_any_policy.pem",
3054    "data/parse_certificate_unittest/issuer_bad_printable_string.pem",
3055    "data/parse_certificate_unittest/key_usage.pem",
3056    "data/parse_certificate_unittest/name_constraints_bad_ip.pem",
3057    "data/parse_certificate_unittest/policies.pem",
3058    "data/parse_certificate_unittest/policy_constraints_empty.pem",
3059    "data/parse_certificate_unittest/policy_constraints_inhibit.pem",
3060    "data/parse_certificate_unittest/policy_constraints_inhibit_require.pem",
3061    "data/parse_certificate_unittest/policy_constraints_require.pem",
3062    "data/parse_certificate_unittest/policy_qualifiers_empty_sequence.pem",
3063    "data/parse_certificate_unittest/serial_37_bytes.pem",
3064    "data/parse_certificate_unittest/serial_negative.pem",
3065    "data/parse_certificate_unittest/serial_not_minimal.pem",
3066    "data/parse_certificate_unittest/serial_not_number.pem",
3067    "data/parse_certificate_unittest/serial_zero.pem",
3068    "data/parse_certificate_unittest/serial_zero_padded.pem",
3069    "data/parse_certificate_unittest/serial_zero_padded_21_bytes.pem",
3070    "data/parse_certificate_unittest/signature_algorithm_null.pem",
3071    "data/parse_certificate_unittest/subject_alt_name.pem",
3072    "data/parse_certificate_unittest/subject_blank_subjectaltname_not_critical.pem",
3073    "data/parse_certificate_unittest/subject_key_identifier_not_octet_string.pem",
3074    "data/parse_certificate_unittest/subject_not_ascii.pem",
3075    "data/parse_certificate_unittest/subject_not_printable_string.pem",
3076    "data/parse_certificate_unittest/subject_printable_string_containing_utf8_client_cert.pem",
3077    "data/parse_certificate_unittest/subject_t61string.pem",
3078    "data/parse_certificate_unittest/subject_t61string_1-32.pem",
3079    "data/parse_certificate_unittest/subject_t61string_126-160.pem",
3080    "data/parse_certificate_unittest/subject_t61string_actual.pem",
3081    "data/parse_certificate_unittest/subjectaltname_bad_ip.pem",
3082    "data/parse_certificate_unittest/subjectaltname_dns_not_ascii.pem",
3083    "data/parse_certificate_unittest/subjectaltname_general_names_empty_sequence.pem",
3084    "data/parse_certificate_unittest/subjectaltname_trailing_data.pem",
3085    "data/parse_certificate_unittest/tbs_explicit_v1.pem",
3086    "data/parse_certificate_unittest/tbs_v1.pem",
3087    "data/parse_certificate_unittest/tbs_v1_extensions.pem",
3088    "data/parse_certificate_unittest/tbs_v2_extensions.pem",
3089    "data/parse_certificate_unittest/tbs_v2_issuer_and_subject_unique_id.pem",
3090    "data/parse_certificate_unittest/tbs_v2_issuer_unique_id.pem",
3091    "data/parse_certificate_unittest/tbs_v2_no_optionals.pem",
3092    "data/parse_certificate_unittest/tbs_v3_all_optionals.pem",
3093    "data/parse_certificate_unittest/tbs_v3_data_after_extensions.pem",
3094    "data/parse_certificate_unittest/tbs_v3_extensions.pem",
3095    "data/parse_certificate_unittest/tbs_v3_extensions_not_sequence.pem",
3096    "data/parse_certificate_unittest/tbs_v3_no_optionals.pem",
3097    "data/parse_certificate_unittest/tbs_v3_real.pem",
3098    "data/parse_certificate_unittest/tbs_v4.pem",
3099    "data/parse_certificate_unittest/tbs_validity_both_generalized_time.pem",
3100    "data/parse_certificate_unittest/tbs_validity_both_utc_time.pem",
3101    "data/parse_certificate_unittest/tbs_validity_generalized_time_and_utc_time.pem",
3102    "data/parse_certificate_unittest/tbs_validity_relaxed.pem",
3103    "data/parse_certificate_unittest/tbs_validity_utc_time_and_generalized_time.pem",
3104    "data/parse_certificate_unittest/v1_explicit_version.pem",
3105    "data/parse_certificate_unittest/v3_certificate_template.pk8",
3106    "data/path_builder_unittest/key_id_name_and_serial_prioritization/int_match_name_only.pem",
3107    "data/path_builder_unittest/key_id_name_and_serial_prioritization/int_matching.pem",
3108    "data/path_builder_unittest/key_id_name_and_serial_prioritization/int_mismatch.pem",
3109    "data/path_builder_unittest/key_id_name_and_serial_prioritization/root.pem",
3110    "data/path_builder_unittest/key_id_name_and_serial_prioritization/root2.pem",
3111    "data/path_builder_unittest/key_id_name_and_serial_prioritization/target.pem",
3112    "data/path_builder_unittest/key_id_prioritization/int_different_ski_a.pem",
3113    "data/path_builder_unittest/key_id_prioritization/int_different_ski_b.pem",
3114    "data/path_builder_unittest/key_id_prioritization/int_different_ski_c.pem",
3115    "data/path_builder_unittest/key_id_prioritization/int_matching_ski_a.pem",
3116    "data/path_builder_unittest/key_id_prioritization/int_matching_ski_b.pem",
3117    "data/path_builder_unittest/key_id_prioritization/int_matching_ski_c.pem",
3118    "data/path_builder_unittest/key_id_prioritization/int_no_ski_a.pem",
3119    "data/path_builder_unittest/key_id_prioritization/int_no_ski_b.pem",
3120    "data/path_builder_unittest/key_id_prioritization/int_no_ski_c.pem",
3121    "data/path_builder_unittest/key_id_prioritization/root.pem",
3122    "data/path_builder_unittest/key_id_prioritization/target.pem",
3123    "data/path_builder_unittest/validity_date_prioritization/int_ac.pem",
3124    "data/path_builder_unittest/validity_date_prioritization/int_ad.pem",
3125    "data/path_builder_unittest/validity_date_prioritization/int_bc.pem",
3126    "data/path_builder_unittest/validity_date_prioritization/int_bd.pem",
3127    "data/path_builder_unittest/validity_date_prioritization/root.pem",
3128    "data/path_builder_unittest/validity_date_prioritization/target.pem",
3129    "data/test.html",
3130    "data/trial_comparison_cert_verifier_unittest/target-multiple-policies/chain.pem",
3131    "data/url_request_unittest/308-without-location-header",
3132    "data/url_request_unittest/308-without-location-header.mock-http-headers",
3133    "data/url_request_unittest/BullRunSpeech.txt",
3134    "data/url_request_unittest/content-type-normalization.html",
3135    "data/url_request_unittest/content-type-normalization.html.mock-http-headers",
3136    "data/url_request_unittest/expect-ct-header-multiple.html",
3137    "data/url_request_unittest/expect-ct-header-multiple.html.mock-http-headers",
3138    "data/url_request_unittest/expect-ct-header-preload.html",
3139    "data/url_request_unittest/expect-ct-header-preload.html.mock-http-headers",
3140    "data/url_request_unittest/expect-ct-header.html",
3141    "data/url_request_unittest/expect-ct-header.html.mock-http-headers",
3142    "data/url_request_unittest/gzip-encoded",
3143    "data/url_request_unittest/gzip-encoded.mock-http-headers",
3144    "data/url_request_unittest/hsts-headers.html",
3145    "data/url_request_unittest/hsts-headers.html.mock-http-headers",
3146    "data/url_request_unittest/hsts-multiple-headers.html",
3147    "data/url_request_unittest/hsts-multiple-headers.html.mock-http-headers",
3148    "data/url_request_unittest/redirect-test.html",
3149    "data/url_request_unittest/redirect-test.html.mock-http-headers",
3150    "data/url_request_unittest/redirect-to-data.html",
3151    "data/url_request_unittest/redirect-to-data.html.mock-http-headers",
3152    "data/url_request_unittest/redirect-to-echoall",
3153    "data/url_request_unittest/redirect-to-echoall.mock-http-headers",
3154    "data/url_request_unittest/redirect-to-file.html",
3155    "data/url_request_unittest/redirect-to-file.html.mock-http-headers",
3156    "data/url_request_unittest/redirect-to-invalid-url.html",
3157    "data/url_request_unittest/redirect-to-invalid-url.html.mock-http-headers",
3158    "data/url_request_unittest/redirect301-to-echo",
3159    "data/url_request_unittest/redirect301-to-echo.mock-http-headers",
3160    "data/url_request_unittest/redirect301-to-https",
3161    "data/url_request_unittest/redirect301-to-https.mock-http-headers",
3162    "data/url_request_unittest/redirect302-to-echo",
3163    "data/url_request_unittest/redirect302-to-echo-cacheable",
3164    "data/url_request_unittest/redirect302-to-echo-cacheable.mock-http-headers",
3165    "data/url_request_unittest/redirect302-to-echo.mock-http-headers",
3166    "data/url_request_unittest/redirect302-to-https",
3167    "data/url_request_unittest/redirect302-to-https.mock-http-headers",
3168    "data/url_request_unittest/redirect303-to-echo",
3169    "data/url_request_unittest/redirect303-to-echo.mock-http-headers",
3170    "data/url_request_unittest/redirect303-to-https",
3171    "data/url_request_unittest/redirect303-to-https.mock-http-headers",
3172    "data/url_request_unittest/redirect307-to-echo",
3173    "data/url_request_unittest/redirect307-to-echo.mock-http-headers",
3174    "data/url_request_unittest/redirect307-to-https",
3175    "data/url_request_unittest/redirect307-to-https.mock-http-headers",
3176    "data/url_request_unittest/redirect308-to-echo",
3177    "data/url_request_unittest/redirect308-to-echo.mock-http-headers",
3178    "data/url_request_unittest/redirect308-to-https",
3179    "data/url_request_unittest/redirect308-to-https.mock-http-headers",
3180    "data/url_request_unittest/simple.html",
3181    "data/url_request_unittest/simple.html.mock-http-headers",
3182    "data/url_request_unittest/two-content-lengths.html",
3183    "data/url_request_unittest/two-content-lengths.html.mock-http-headers",
3184    "data/url_request_unittest/with-headers.html",
3185    "data/url_request_unittest/with-headers.html.mock-http-headers",
3186    "data/verify_certificate_chain_unittest/basic-constraints-pathlen-0-self-issued/chain.pem",
3187    "data/verify_certificate_chain_unittest/basic-constraints-pathlen-0-self-issued/main.test",
3188    "data/verify_certificate_chain_unittest/expired-intermediate/chain.pem",
3189    "data/verify_certificate_chain_unittest/expired-intermediate/not-after.test",
3190    "data/verify_certificate_chain_unittest/expired-intermediate/not-before.test",
3191    "data/verify_certificate_chain_unittest/expired-root/chain.pem",
3192    "data/verify_certificate_chain_unittest/expired-root/not-after-ta-with-constraints.test",
3193    "data/verify_certificate_chain_unittest/expired-root/not-after.test",
3194    "data/verify_certificate_chain_unittest/expired-root/not-before.test",
3195    "data/verify_certificate_chain_unittest/expired-target/chain.pem",
3196    "data/verify_certificate_chain_unittest/expired-target/not-after.test",
3197    "data/verify_certificate_chain_unittest/expired-target/not-before.test",
3198    "data/verify_certificate_chain_unittest/incorrect-trust-anchor/chain.pem",
3199    "data/verify_certificate_chain_unittest/incorrect-trust-anchor/main.test",
3200    "data/verify_certificate_chain_unittest/intermediate-and-target-wrong-signature/chain.pem",
3201    "data/verify_certificate_chain_unittest/intermediate-and-target-wrong-signature/main.test",
3202    "data/verify_certificate_chain_unittest/intermediate-basic-constraints-ca-false/chain.pem",
3203    "data/verify_certificate_chain_unittest/intermediate-basic-constraints-ca-false/main.test",
3204    "data/verify_certificate_chain_unittest/intermediate-basic-constraints-not-critical/chain.pem",
3205    "data/verify_certificate_chain_unittest/intermediate-basic-constraints-not-critical/main.test",
3206    "data/verify_certificate_chain_unittest/intermediate-eku-any-and-clientauth/any.test",
3207    "data/verify_certificate_chain_unittest/intermediate-eku-any-and-clientauth/chain.pem",
3208    "data/verify_certificate_chain_unittest/intermediate-eku-any-and-clientauth/clientauth.test",
3209    "data/verify_certificate_chain_unittest/intermediate-eku-any-and-clientauth/serverauth.test",
3210    "data/verify_certificate_chain_unittest/intermediate-eku-clientauth/any.test",
3211    "data/verify_certificate_chain_unittest/intermediate-eku-clientauth/chain.pem",
3212    "data/verify_certificate_chain_unittest/intermediate-eku-clientauth/clientauth.test",
3213    "data/verify_certificate_chain_unittest/intermediate-eku-clientauth/serverauth.test",
3214    "data/verify_certificate_chain_unittest/intermediate-eku-server-gated-crypto/sha1-chain.pem",
3215    "data/verify_certificate_chain_unittest/intermediate-eku-server-gated-crypto/sha1-eku-any.test",
3216    "data/verify_certificate_chain_unittest/intermediate-eku-server-gated-crypto/sha1-eku-clientAuth.test",
3217    "data/verify_certificate_chain_unittest/intermediate-eku-server-gated-crypto/sha1-eku-serverAuth.test",
3218    "data/verify_certificate_chain_unittest/intermediate-eku-server-gated-crypto/sha256-chain.pem",
3219    "data/verify_certificate_chain_unittest/intermediate-eku-server-gated-crypto/sha256-eku-any.test",
3220    "data/verify_certificate_chain_unittest/intermediate-eku-server-gated-crypto/sha256-eku-clientAuth.test",
3221    "data/verify_certificate_chain_unittest/intermediate-eku-server-gated-crypto/sha256-eku-serverAuth.test",
3222    "data/verify_certificate_chain_unittest/intermediate-lacks-basic-constraints/chain.pem",
3223    "data/verify_certificate_chain_unittest/intermediate-lacks-basic-constraints/main.test",
3224    "data/verify_certificate_chain_unittest/intermediate-lacks-signing-key-usage/chain.pem",
3225    "data/verify_certificate_chain_unittest/intermediate-lacks-signing-key-usage/main.test",
3226    "data/verify_certificate_chain_unittest/intermediate-signed-with-md5/chain.pem",
3227    "data/verify_certificate_chain_unittest/intermediate-signed-with-md5/main.test",
3228    "data/verify_certificate_chain_unittest/intermediate-unknown-critical-extension/chain.pem",
3229    "data/verify_certificate_chain_unittest/intermediate-unknown-critical-extension/main.test",
3230    "data/verify_certificate_chain_unittest/intermediate-unknown-non-critical-extension/chain.pem",
3231    "data/verify_certificate_chain_unittest/intermediate-unknown-non-critical-extension/main.test",
3232    "data/verify_certificate_chain_unittest/intermediate-wrong-signature-no-authority-key-identifier/chain.pem",
3233    "data/verify_certificate_chain_unittest/intermediate-wrong-signature-no-authority-key-identifier/main.test",
3234    "data/verify_certificate_chain_unittest/issuer-and-subject-not-byte-for-byte-equal/anchor.pem",
3235    "data/verify_certificate_chain_unittest/issuer-and-subject-not-byte-for-byte-equal/anchor.test",
3236    "data/verify_certificate_chain_unittest/issuer-and-subject-not-byte-for-byte-equal/target.pem",
3237    "data/verify_certificate_chain_unittest/issuer-and-subject-not-byte-for-byte-equal/target.test",
3238    "data/verify_certificate_chain_unittest/key-rollover/longrolloverchain.pem",
3239    "data/verify_certificate_chain_unittest/key-rollover/longrolloverchain.test",
3240    "data/verify_certificate_chain_unittest/key-rollover/newchain.pem",
3241    "data/verify_certificate_chain_unittest/key-rollover/newchain.test",
3242    "data/verify_certificate_chain_unittest/key-rollover/oldchain.pem",
3243    "data/verify_certificate_chain_unittest/key-rollover/oldchain.test",
3244    "data/verify_certificate_chain_unittest/key-rollover/rolloverchain.pem",
3245    "data/verify_certificate_chain_unittest/key-rollover/rolloverchain.test",
3246    "data/verify_certificate_chain_unittest/many-names/ok-all-types.pem",
3247    "data/verify_certificate_chain_unittest/many-names/ok-all-types.test",
3248    "data/verify_certificate_chain_unittest/many-names/ok-different-types-dirnames.pem",
3249    "data/verify_certificate_chain_unittest/many-names/ok-different-types-dirnames.test",
3250    "data/verify_certificate_chain_unittest/many-names/ok-different-types-dns.pem",
3251    "data/verify_certificate_chain_unittest/many-names/ok-different-types-dns.test",
3252    "data/verify_certificate_chain_unittest/many-names/ok-different-types-ips.pem",
3253    "data/verify_certificate_chain_unittest/many-names/ok-different-types-ips.test",
3254    "data/verify_certificate_chain_unittest/many-names/toomany-all-types.pem",
3255    "data/verify_certificate_chain_unittest/many-names/toomany-all-types.test",
3256    "data/verify_certificate_chain_unittest/many-names/toomany-dirnames-excluded.pem",
3257    "data/verify_certificate_chain_unittest/many-names/toomany-dirnames-excluded.test",
3258    "data/verify_certificate_chain_unittest/many-names/toomany-dirnames-permitted.pem",
3259    "data/verify_certificate_chain_unittest/many-names/toomany-dirnames-permitted.test",
3260    "data/verify_certificate_chain_unittest/many-names/toomany-dns-excluded.pem",
3261    "data/verify_certificate_chain_unittest/many-names/toomany-dns-excluded.test",
3262    "data/verify_certificate_chain_unittest/many-names/toomany-dns-permitted.pem",
3263    "data/verify_certificate_chain_unittest/many-names/toomany-dns-permitted.test",
3264    "data/verify_certificate_chain_unittest/many-names/toomany-ips-excluded.pem",
3265    "data/verify_certificate_chain_unittest/many-names/toomany-ips-excluded.test",
3266    "data/verify_certificate_chain_unittest/many-names/toomany-ips-permitted.pem",
3267    "data/verify_certificate_chain_unittest/many-names/toomany-ips-permitted.test",
3268    "data/verify_certificate_chain_unittest/non-self-signed-root/chain.pem",
3269    "data/verify_certificate_chain_unittest/non-self-signed-root/main.test",
3270    "data/verify_certificate_chain_unittest/non-self-signed-root/ta-with-constraints.test",
3271    "data/verify_certificate_chain_unittest/pkits_errors/4.1.2.txt",
3272    "data/verify_certificate_chain_unittest/pkits_errors/4.1.3.txt",
3273    "data/verify_certificate_chain_unittest/pkits_errors/4.1.4.txt",
3274    "data/verify_certificate_chain_unittest/pkits_errors/4.1.5.txt",
3275    "data/verify_certificate_chain_unittest/pkits_errors/4.1.6.txt",
3276    "data/verify_certificate_chain_unittest/pkits_errors/4.10.1.txt",
3277    "data/verify_certificate_chain_unittest/pkits_errors/4.10.10.txt",
3278    "data/verify_certificate_chain_unittest/pkits_errors/4.10.2.txt",
3279    "data/verify_certificate_chain_unittest/pkits_errors/4.10.3.txt",
3280    "data/verify_certificate_chain_unittest/pkits_errors/4.10.4.txt",
3281    "data/verify_certificate_chain_unittest/pkits_errors/4.10.5.txt",
3282    "data/verify_certificate_chain_unittest/pkits_errors/4.10.6.txt",
3283    "data/verify_certificate_chain_unittest/pkits_errors/4.10.7.txt",
3284    "data/verify_certificate_chain_unittest/pkits_errors/4.10.8.txt",
3285    "data/verify_certificate_chain_unittest/pkits_errors/4.11.1.txt",
3286    "data/verify_certificate_chain_unittest/pkits_errors/4.11.10.txt",
3287    "data/verify_certificate_chain_unittest/pkits_errors/4.11.11.txt",
3288    "data/verify_certificate_chain_unittest/pkits_errors/4.11.3.txt",
3289    "data/verify_certificate_chain_unittest/pkits_errors/4.11.5.txt",
3290    "data/verify_certificate_chain_unittest/pkits_errors/4.11.6.txt",
3291    "data/verify_certificate_chain_unittest/pkits_errors/4.11.8.txt",
3292    "data/verify_certificate_chain_unittest/pkits_errors/4.11.9.txt",
3293    "data/verify_certificate_chain_unittest/pkits_errors/4.12.1.txt",
3294    "data/verify_certificate_chain_unittest/pkits_errors/4.12.10.txt",
3295    "data/verify_certificate_chain_unittest/pkits_errors/4.12.3.txt",
3296    "data/verify_certificate_chain_unittest/pkits_errors/4.12.4.txt",
3297    "data/verify_certificate_chain_unittest/pkits_errors/4.12.5.txt",
3298    "data/verify_certificate_chain_unittest/pkits_errors/4.12.6.txt",
3299    "data/verify_certificate_chain_unittest/pkits_errors/4.12.8.txt",
3300    "data/verify_certificate_chain_unittest/pkits_errors/4.13.10.txt",
3301    "data/verify_certificate_chain_unittest/pkits_errors/4.13.12.txt",
3302    "data/verify_certificate_chain_unittest/pkits_errors/4.13.13.txt",
3303    "data/verify_certificate_chain_unittest/pkits_errors/4.13.15.txt",
3304    "data/verify_certificate_chain_unittest/pkits_errors/4.13.16.txt",
3305    "data/verify_certificate_chain_unittest/pkits_errors/4.13.17.txt",
3306    "data/verify_certificate_chain_unittest/pkits_errors/4.13.2.txt",
3307    "data/verify_certificate_chain_unittest/pkits_errors/4.13.20.txt",
3308    "data/verify_certificate_chain_unittest/pkits_errors/4.13.21.txt",
3309    "data/verify_certificate_chain_unittest/pkits_errors/4.13.22.txt",
3310    "data/verify_certificate_chain_unittest/pkits_errors/4.13.23.txt",
3311    "data/verify_certificate_chain_unittest/pkits_errors/4.13.24.txt",
3312    "data/verify_certificate_chain_unittest/pkits_errors/4.13.25.txt",
3313    "data/verify_certificate_chain_unittest/pkits_errors/4.13.26.txt",
3314    "data/verify_certificate_chain_unittest/pkits_errors/4.13.27.txt",
3315    "data/verify_certificate_chain_unittest/pkits_errors/4.13.28.txt",
3316    "data/verify_certificate_chain_unittest/pkits_errors/4.13.29.txt",
3317    "data/verify_certificate_chain_unittest/pkits_errors/4.13.3.txt",
3318    "data/verify_certificate_chain_unittest/pkits_errors/4.13.31.txt",
3319    "data/verify_certificate_chain_unittest/pkits_errors/4.13.33.txt",
3320    "data/verify_certificate_chain_unittest/pkits_errors/4.13.34.txt",
3321    "data/verify_certificate_chain_unittest/pkits_errors/4.13.35.txt",
3322    "data/verify_certificate_chain_unittest/pkits_errors/4.13.36.txt",
3323    "data/verify_certificate_chain_unittest/pkits_errors/4.13.37.txt",
3324    "data/verify_certificate_chain_unittest/pkits_errors/4.13.38.txt",
3325    "data/verify_certificate_chain_unittest/pkits_errors/4.13.7.txt",
3326    "data/verify_certificate_chain_unittest/pkits_errors/4.13.8.txt",
3327    "data/verify_certificate_chain_unittest/pkits_errors/4.13.9.txt",
3328    "data/verify_certificate_chain_unittest/pkits_errors/4.16.2.txt",
3329    "data/verify_certificate_chain_unittest/pkits_errors/4.2.1.txt",
3330    "data/verify_certificate_chain_unittest/pkits_errors/4.2.2.txt",
3331    "data/verify_certificate_chain_unittest/pkits_errors/4.2.5.txt",
3332    "data/verify_certificate_chain_unittest/pkits_errors/4.2.6.txt",
3333    "data/verify_certificate_chain_unittest/pkits_errors/4.2.7.txt",
3334    "data/verify_certificate_chain_unittest/pkits_errors/4.3.1.txt",
3335    "data/verify_certificate_chain_unittest/pkits_errors/4.3.2.txt",
3336    "data/verify_certificate_chain_unittest/pkits_errors/4.6.1.txt",
3337    "data/verify_certificate_chain_unittest/pkits_errors/4.6.10.txt",
3338    "data/verify_certificate_chain_unittest/pkits_errors/4.6.11.txt",
3339    "data/verify_certificate_chain_unittest/pkits_errors/4.6.12.txt",
3340    "data/verify_certificate_chain_unittest/pkits_errors/4.6.16.txt",
3341    "data/verify_certificate_chain_unittest/pkits_errors/4.6.2.txt",
3342    "data/verify_certificate_chain_unittest/pkits_errors/4.6.3.txt",
3343    "data/verify_certificate_chain_unittest/pkits_errors/4.6.5.txt",
3344    "data/verify_certificate_chain_unittest/pkits_errors/4.6.6.txt",
3345    "data/verify_certificate_chain_unittest/pkits_errors/4.6.9.txt",
3346    "data/verify_certificate_chain_unittest/pkits_errors/4.7.1.txt",
3347    "data/verify_certificate_chain_unittest/pkits_errors/4.7.2.txt",
3348    "data/verify_certificate_chain_unittest/pkits_errors/4.8.1.txt",
3349    "data/verify_certificate_chain_unittest/pkits_errors/4.8.12.txt",
3350    "data/verify_certificate_chain_unittest/pkits_errors/4.8.14.txt",
3351    "data/verify_certificate_chain_unittest/pkits_errors/4.8.2.txt",
3352    "data/verify_certificate_chain_unittest/pkits_errors/4.8.3.txt",
3353    "data/verify_certificate_chain_unittest/pkits_errors/4.8.4.txt",
3354    "data/verify_certificate_chain_unittest/pkits_errors/4.8.5.txt",
3355    "data/verify_certificate_chain_unittest/pkits_errors/4.8.6.txt",
3356    "data/verify_certificate_chain_unittest/pkits_errors/4.8.7.txt",
3357    "data/verify_certificate_chain_unittest/pkits_errors/4.8.8.txt",
3358    "data/verify_certificate_chain_unittest/pkits_errors/4.8.9.txt",
3359    "data/verify_certificate_chain_unittest/pkits_errors/4.9.3.txt",
3360    "data/verify_certificate_chain_unittest/pkits_errors/4.9.5.txt",
3361    "data/verify_certificate_chain_unittest/pkits_errors/4.9.7.txt",
3362    "data/verify_certificate_chain_unittest/pkits_errors/4.9.8.txt",
3363    "data/verify_certificate_chain_unittest/root-basic-constraints-ca-false/chain.pem",
3364    "data/verify_certificate_chain_unittest/root-basic-constraints-ca-false/main.test",
3365    "data/verify_certificate_chain_unittest/root-basic-constraints-ca-false/ta-with-constraints.test",
3366    "data/verify_certificate_chain_unittest/root-eku-clientauth/chain.pem",
3367    "data/verify_certificate_chain_unittest/root-eku-clientauth/serverauth-ta-with-constraints.test",
3368    "data/verify_certificate_chain_unittest/root-eku-clientauth/serverauth.test",
3369    "data/verify_certificate_chain_unittest/root-lacks-basic-constraints/chain.pem",
3370    "data/verify_certificate_chain_unittest/root-lacks-basic-constraints/main.test",
3371    "data/verify_certificate_chain_unittest/root-lacks-basic-constraints/ta-with-constraints.test",
3372    "data/verify_certificate_chain_unittest/target-and-intermediate/chain.pem",
3373    "data/verify_certificate_chain_unittest/target-and-intermediate/distrusted-root-expired.test",
3374    "data/verify_certificate_chain_unittest/target-and-intermediate/distrusted-root.test",
3375    "data/verify_certificate_chain_unittest/target-and-intermediate/main.test",
3376    "data/verify_certificate_chain_unittest/target-and-intermediate/unspecified-trust-root.test",
3377    "data/verify_certificate_chain_unittest/target-eku-clientauth/any.test",
3378    "data/verify_certificate_chain_unittest/target-eku-clientauth/chain.pem",
3379    "data/verify_certificate_chain_unittest/target-eku-clientauth/clientauth.test",
3380    "data/verify_certificate_chain_unittest/target-eku-clientauth/serverauth.test",
3381    "data/verify_certificate_chain_unittest/target-eku-none/any.test",
3382    "data/verify_certificate_chain_unittest/target-eku-none/chain.pem",
3383    "data/verify_certificate_chain_unittest/target-eku-none/clientauth.test",
3384    "data/verify_certificate_chain_unittest/target-eku-none/serverauth.test",
3385    "data/verify_certificate_chain_unittest/target-has-512bit-rsa-key/chain.pem",
3386    "data/verify_certificate_chain_unittest/target-has-512bit-rsa-key/main.test",
3387    "data/verify_certificate_chain_unittest/target-has-keycertsign-but-not-ca/chain.pem",
3388    "data/verify_certificate_chain_unittest/target-has-keycertsign-but-not-ca/main.test",
3389    "data/verify_certificate_chain_unittest/target-has-pathlen-but-not-ca/chain.pem",
3390    "data/verify_certificate_chain_unittest/target-has-pathlen-but-not-ca/main.test",
3391    "data/verify_certificate_chain_unittest/target-not-end-entity/chain.pem",
3392    "data/verify_certificate_chain_unittest/target-not-end-entity/main.test",
3393    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/ec-decipherOnly.pem",
3394    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/ec-decipherOnly.test",
3395    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/ec-digitalSignature.pem",
3396    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/ec-digitalSignature.test",
3397    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/ec-keyAgreement.pem",
3398    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/ec-keyAgreement.test",
3399    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/ec-keyEncipherment.pem",
3400    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/ec-keyEncipherment.test",
3401    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/rsa-decipherOnly.pem",
3402    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/rsa-decipherOnly.test",
3403    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/rsa-digitalSignature.pem",
3404    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/rsa-digitalSignature.test",
3405    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/rsa-keyAgreement.pem",
3406    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/rsa-keyAgreement.test",
3407    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/rsa-keyEncipherment.pem",
3408    "data/verify_certificate_chain_unittest/target-serverauth-various-keyusages/rsa-keyEncipherment.test",
3409    "data/verify_certificate_chain_unittest/target-signed-by-512bit-rsa/chain.pem",
3410    "data/verify_certificate_chain_unittest/target-signed-by-512bit-rsa/main.test",
3411    "data/verify_certificate_chain_unittest/target-signed-using-ecdsa/chain.pem",
3412    "data/verify_certificate_chain_unittest/target-signed-using-ecdsa/main.test",
3413    "data/verify_certificate_chain_unittest/target-signed-with-md5/chain.pem",
3414    "data/verify_certificate_chain_unittest/target-signed-with-md5/main.test",
3415    "data/verify_certificate_chain_unittest/target-unknown-critical-extension/chain.pem",
3416    "data/verify_certificate_chain_unittest/target-unknown-critical-extension/main.test",
3417    "data/verify_certificate_chain_unittest/target-wrong-signature-no-authority-key-identifier/chain.pem",
3418    "data/verify_certificate_chain_unittest/target-wrong-signature-no-authority-key-identifier/main.test",
3419    "data/verify_certificate_chain_unittest/target-wrong-signature/chain.pem",
3420    "data/verify_certificate_chain_unittest/target-wrong-signature/main.test",
3421    "data/verify_certificate_chain_unittest/unknown-critical-policy-qualifier/chain.pem",
3422    "data/verify_certificate_chain_unittest/unknown-critical-policy-qualifier/main.test",
3423    "data/verify_certificate_chain_unittest/unknown-non-critical-policy-qualifier/chain.pem",
3424    "data/verify_certificate_chain_unittest/unknown-non-critical-policy-qualifier/main.test",
3425    "data/verify_certificate_chain_unittest/violates-basic-constraints-pathlen-0/chain.pem",
3426    "data/verify_certificate_chain_unittest/violates-basic-constraints-pathlen-0/main.test",
3427    "data/verify_certificate_chain_unittest/violates-pathlen-1-from-root/chain.pem",
3428    "data/verify_certificate_chain_unittest/violates-pathlen-1-from-root/main.test",
3429    "data/verify_certificate_chain_unittest/violates-pathlen-1-from-root/ta-with-constraints.test",
3430    "data/verify_name_match_unittest/names/ascii-BMPSTRING-case_swap-dupe_attr.pem",
3431    "data/verify_name_match_unittest/names/ascii-BMPSTRING-case_swap-extra_attr.pem",
3432    "data/verify_name_match_unittest/names/ascii-BMPSTRING-case_swap-extra_rdn.pem",
3433    "data/verify_name_match_unittest/names/ascii-BMPSTRING-case_swap.pem",
3434    "data/verify_name_match_unittest/names/ascii-BMPSTRING-extra_whitespace-dupe_attr.pem",
3435    "data/verify_name_match_unittest/names/ascii-BMPSTRING-extra_whitespace-extra_attr.pem",
3436    "data/verify_name_match_unittest/names/ascii-BMPSTRING-extra_whitespace-extra_rdn.pem",
3437    "data/verify_name_match_unittest/names/ascii-BMPSTRING-extra_whitespace.pem",
3438    "data/verify_name_match_unittest/names/ascii-BMPSTRING-unmangled-dupe_attr.pem",
3439    "data/verify_name_match_unittest/names/ascii-BMPSTRING-unmangled-extra_attr.pem",
3440    "data/verify_name_match_unittest/names/ascii-BMPSTRING-unmangled-extra_rdn.pem",
3441    "data/verify_name_match_unittest/names/ascii-BMPSTRING-unmangled.pem",
3442    "data/verify_name_match_unittest/names/ascii-PRINTABLESTRING-case_swap-dupe_attr.pem",
3443    "data/verify_name_match_unittest/names/ascii-PRINTABLESTRING-case_swap-extra_attr.pem",
3444    "data/verify_name_match_unittest/names/ascii-PRINTABLESTRING-case_swap-extra_rdn.pem",
3445    "data/verify_name_match_unittest/names/ascii-PRINTABLESTRING-case_swap.pem",
3446    "data/verify_name_match_unittest/names/ascii-PRINTABLESTRING-extra_whitespace-dupe_attr.pem",
3447    "data/verify_name_match_unittest/names/ascii-PRINTABLESTRING-extra_whitespace-extra_attr.pem",
3448    "data/verify_name_match_unittest/names/ascii-PRINTABLESTRING-extra_whitespace-extra_rdn.pem",
3449    "data/verify_name_match_unittest/names/ascii-PRINTABLESTRING-extra_whitespace.pem",
3450    "data/verify_name_match_unittest/names/ascii-PRINTABLESTRING-rdn_sorting_1.pem",
3451    "data/verify_name_match_unittest/names/ascii-PRINTABLESTRING-rdn_sorting_2.pem",
3452    "data/verify_name_match_unittest/names/ascii-PRINTABLESTRING-unmangled-dupe_attr.pem",
3453    "data/verify_name_match_unittest/names/ascii-PRINTABLESTRING-unmangled-extra_attr.pem",
3454    "data/verify_name_match_unittest/names/ascii-PRINTABLESTRING-unmangled-extra_rdn.pem",
3455    "data/verify_name_match_unittest/names/ascii-PRINTABLESTRING-unmangled.pem",
3456    "data/verify_name_match_unittest/names/ascii-T61STRING-case_swap-dupe_attr.pem",
3457    "data/verify_name_match_unittest/names/ascii-T61STRING-case_swap-extra_attr.pem",
3458    "data/verify_name_match_unittest/names/ascii-T61STRING-case_swap-extra_rdn.pem",
3459    "data/verify_name_match_unittest/names/ascii-T61STRING-case_swap.pem",
3460    "data/verify_name_match_unittest/names/ascii-T61STRING-extra_whitespace-dupe_attr.pem",
3461    "data/verify_name_match_unittest/names/ascii-T61STRING-extra_whitespace-extra_attr.pem",
3462    "data/verify_name_match_unittest/names/ascii-T61STRING-extra_whitespace-extra_rdn.pem",
3463    "data/verify_name_match_unittest/names/ascii-T61STRING-extra_whitespace.pem",
3464    "data/verify_name_match_unittest/names/ascii-T61STRING-unmangled-dupe_attr.pem",
3465    "data/verify_name_match_unittest/names/ascii-T61STRING-unmangled-extra_attr.pem",
3466    "data/verify_name_match_unittest/names/ascii-T61STRING-unmangled-extra_rdn.pem",
3467    "data/verify_name_match_unittest/names/ascii-T61STRING-unmangled.pem",
3468    "data/verify_name_match_unittest/names/ascii-UNIVERSALSTRING-case_swap-dupe_attr.pem",
3469    "data/verify_name_match_unittest/names/ascii-UNIVERSALSTRING-case_swap-extra_attr.pem",
3470    "data/verify_name_match_unittest/names/ascii-UNIVERSALSTRING-case_swap-extra_rdn.pem",
3471    "data/verify_name_match_unittest/names/ascii-UNIVERSALSTRING-case_swap.pem",
3472    "data/verify_name_match_unittest/names/ascii-UNIVERSALSTRING-extra_whitespace-dupe_attr.pem",
3473    "data/verify_name_match_unittest/names/ascii-UNIVERSALSTRING-extra_whitespace-extra_attr.pem",
3474    "data/verify_name_match_unittest/names/ascii-UNIVERSALSTRING-extra_whitespace-extra_rdn.pem",
3475    "data/verify_name_match_unittest/names/ascii-UNIVERSALSTRING-extra_whitespace.pem",
3476    "data/verify_name_match_unittest/names/ascii-UNIVERSALSTRING-unmangled-dupe_attr.pem",
3477    "data/verify_name_match_unittest/names/ascii-UNIVERSALSTRING-unmangled-extra_attr.pem",
3478    "data/verify_name_match_unittest/names/ascii-UNIVERSALSTRING-unmangled-extra_rdn.pem",
3479    "data/verify_name_match_unittest/names/ascii-UNIVERSALSTRING-unmangled.pem",
3480    "data/verify_name_match_unittest/names/ascii-UTF8-case_swap-dupe_attr.pem",
3481    "data/verify_name_match_unittest/names/ascii-UTF8-case_swap-extra_attr.pem",
3482    "data/verify_name_match_unittest/names/ascii-UTF8-case_swap-extra_rdn.pem",
3483    "data/verify_name_match_unittest/names/ascii-UTF8-case_swap.pem",
3484    "data/verify_name_match_unittest/names/ascii-UTF8-extra_whitespace-dupe_attr.pem",
3485    "data/verify_name_match_unittest/names/ascii-UTF8-extra_whitespace-extra_attr.pem",
3486    "data/verify_name_match_unittest/names/ascii-UTF8-extra_whitespace-extra_rdn.pem",
3487    "data/verify_name_match_unittest/names/ascii-UTF8-extra_whitespace.pem",
3488    "data/verify_name_match_unittest/names/ascii-UTF8-unmangled-dupe_attr.pem",
3489    "data/verify_name_match_unittest/names/ascii-UTF8-unmangled-extra_attr.pem",
3490    "data/verify_name_match_unittest/names/ascii-UTF8-unmangled-extra_rdn.pem",
3491    "data/verify_name_match_unittest/names/ascii-UTF8-unmangled.pem",
3492    "data/verify_name_match_unittest/names/ascii-mixed-rdn_dupetype_sorting_1.pem",
3493    "data/verify_name_match_unittest/names/ascii-mixed-rdn_dupetype_sorting_2.pem",
3494    "data/verify_name_match_unittest/names/custom-custom-normalized.pem",
3495    "data/verify_name_match_unittest/names/invalid-AttributeTypeAndValue-badAttributeType.pem",
3496    "data/verify_name_match_unittest/names/invalid-AttributeTypeAndValue-empty.pem",
3497    "data/verify_name_match_unittest/names/invalid-AttributeTypeAndValue-extradata.pem",
3498    "data/verify_name_match_unittest/names/invalid-AttributeTypeAndValue-onlyOneElement.pem",
3499    "data/verify_name_match_unittest/names/invalid-AttributeTypeAndValue-setNotSequence.pem",
3500    "data/verify_name_match_unittest/names/invalid-Name-setInsteadOfSequence.pem",
3501    "data/verify_name_match_unittest/names/invalid-RDN-empty.pem",
3502    "data/verify_name_match_unittest/names/invalid-RDN-sequenceInsteadOfSet.pem",
3503    "data/verify_name_match_unittest/names/unicode-mixed-normalized.pem",
3504    "data/verify_name_match_unittest/names/unicode-mixed-unnormalized.pem",
3505    "data/verify_name_match_unittest/names/unicode_bmp-BMPSTRING-unmangled.pem",
3506    "data/verify_name_match_unittest/names/unicode_bmp-UNIVERSALSTRING-unmangled.pem",
3507    "data/verify_name_match_unittest/names/unicode_bmp-UTF8-unmangled.pem",
3508    "data/verify_name_match_unittest/names/unicode_supplementary-UNIVERSALSTRING-unmangled.pem",
3509    "data/verify_name_match_unittest/names/unicode_supplementary-UTF8-unmangled.pem",
3510    "data/verify_name_match_unittest/names/valid-Name-empty.pem",
3511    "data/verify_name_match_unittest/names/valid-minimal.pem",
3512    "data/verify_signed_data_unittest/ecdsa-prime256v1-sha512-spki-params-null.pem",
3513    "data/verify_signed_data_unittest/ecdsa-prime256v1-sha512-unused-bits-signature.pem",
3514    "data/verify_signed_data_unittest/ecdsa-prime256v1-sha512-using-ecdh-key.pem",
3515    "data/verify_signed_data_unittest/ecdsa-prime256v1-sha512-using-ecmqv-key.pem",
3516    "data/verify_signed_data_unittest/ecdsa-prime256v1-sha512-using-rsa-algorithm.pem",
3517    "data/verify_signed_data_unittest/ecdsa-prime256v1-sha512-wrong-signature-format.pem",
3518    "data/verify_signed_data_unittest/ecdsa-prime256v1-sha512.pem",
3519    "data/verify_signed_data_unittest/ecdsa-secp384r1-sha256-corrupted-data.pem",
3520    "data/verify_signed_data_unittest/ecdsa-secp384r1-sha256.pem",
3521    "data/verify_signed_data_unittest/ecdsa-using-rsa-key.pem",
3522    "data/verify_signed_data_unittest/rsa-pkcs1-sha1-bad-key-der-length.pem",
3523    "data/verify_signed_data_unittest/rsa-pkcs1-sha1-bad-key-der-null.pem",
3524    "data/verify_signed_data_unittest/rsa-pkcs1-sha1-key-params-absent.pem",
3525    "data/verify_signed_data_unittest/rsa-pkcs1-sha1-using-pss-key-no-params.pem",
3526    "data/verify_signed_data_unittest/rsa-pkcs1-sha1-wrong-algorithm.pem",
3527    "data/verify_signed_data_unittest/rsa-pkcs1-sha1.pem",
3528    "data/verify_signed_data_unittest/rsa-pkcs1-sha256-key-encoded-ber.pem",
3529    "data/verify_signed_data_unittest/rsa-pkcs1-sha256-spki-non-null-params.pem",
3530    "data/verify_signed_data_unittest/rsa-pkcs1-sha256-using-ecdsa-algorithm.pem",
3531    "data/verify_signed_data_unittest/rsa-pkcs1-sha256-using-id-ea-rsa.pem",
3532    "data/verify_signed_data_unittest/rsa-pkcs1-sha256.pem",
3533    "data/verify_signed_data_unittest/rsa-pss-sha1-salt20-using-pss-key-no-params.pem",
3534    "data/verify_signed_data_unittest/rsa-pss-sha1-salt20-using-pss-key-with-null-params.pem",
3535    "data/verify_signed_data_unittest/rsa-pss-sha1-salt20.pem",
3536    "data/verify_signed_data_unittest/rsa-pss-sha1-wrong-salt.pem",
3537    "data/verify_signed_data_unittest/rsa-pss-sha256-mgf1-sha512-salt33.pem",
3538    "data/verify_signed_data_unittest/rsa-pss-sha256-salt10-using-pss-key-with-params.pem",
3539    "data/verify_signed_data_unittest/rsa-pss-sha256-salt10-using-pss-key-with-wrong-params.pem",
3540    "data/verify_signed_data_unittest/rsa-pss-sha256-salt10.pem",
3541    "data/verify_signed_data_unittest/rsa-using-ec-key.pem",
3542    "data/verify_signed_data_unittest/rsa2048-pkcs1-sha512.pem",
3543    "third_party/nist-pkits/certs/AllCertificatesNoPoliciesTest2EE.crt",
3544    "third_party/nist-pkits/certs/AllCertificatesSamePoliciesTest10EE.crt",
3545    "third_party/nist-pkits/certs/AllCertificatesSamePoliciesTest13EE.crt",
3546    "third_party/nist-pkits/certs/AllCertificatesanyPolicyTest11EE.crt",
3547    "third_party/nist-pkits/certs/AnyPolicyTest14EE.crt",
3548    "third_party/nist-pkits/certs/BadCRLIssuerNameCACert.crt",
3549    "third_party/nist-pkits/certs/BadCRLSignatureCACert.crt",
3550    "third_party/nist-pkits/certs/BadSignedCACert.crt",
3551    "third_party/nist-pkits/certs/BadnotAfterDateCACert.crt",
3552    "third_party/nist-pkits/certs/BadnotBeforeDateCACert.crt",
3553    "third_party/nist-pkits/certs/BasicSelfIssuedCRLSigningKeyCACert.crt",
3554    "third_party/nist-pkits/certs/BasicSelfIssuedCRLSigningKeyCRLCert.crt",
3555    "third_party/nist-pkits/certs/BasicSelfIssuedNewKeyCACert.crt",
3556    "third_party/nist-pkits/certs/BasicSelfIssuedNewKeyOldWithNewCACert.crt",
3557    "third_party/nist-pkits/certs/BasicSelfIssuedOldKeyCACert.crt",
3558    "third_party/nist-pkits/certs/BasicSelfIssuedOldKeyNewWithOldCACert.crt",
3559    "third_party/nist-pkits/certs/CPSPointerQualifierTest20EE.crt",
3560    "third_party/nist-pkits/certs/DSACACert.crt",
3561    "third_party/nist-pkits/certs/DSAParametersInheritedCACert.crt",
3562    "third_party/nist-pkits/certs/DifferentPoliciesTest12EE.crt",
3563    "third_party/nist-pkits/certs/DifferentPoliciesTest3EE.crt",
3564    "third_party/nist-pkits/certs/DifferentPoliciesTest4EE.crt",
3565    "third_party/nist-pkits/certs/DifferentPoliciesTest5EE.crt",
3566    "third_party/nist-pkits/certs/DifferentPoliciesTest7EE.crt",
3567    "third_party/nist-pkits/certs/DifferentPoliciesTest8EE.crt",
3568    "third_party/nist-pkits/certs/DifferentPoliciesTest9EE.crt",
3569    "third_party/nist-pkits/certs/GeneralizedTimeCRLnextUpdateCACert.crt",
3570    "third_party/nist-pkits/certs/GoodCACert.crt",
3571    "third_party/nist-pkits/certs/GoodsubCACert.crt",
3572    "third_party/nist-pkits/certs/GoodsubCAPanyPolicyMapping1to2CACert.crt",
3573    "third_party/nist-pkits/certs/InvalidBadCRLIssuerNameTest5EE.crt",
3574    "third_party/nist-pkits/certs/InvalidBadCRLSignatureTest4EE.crt",
3575    "third_party/nist-pkits/certs/InvalidBasicSelfIssuedCRLSigningKeyTest7EE.crt",
3576    "third_party/nist-pkits/certs/InvalidBasicSelfIssuedCRLSigningKeyTest8EE.crt",
3577    "third_party/nist-pkits/certs/InvalidBasicSelfIssuedNewWithOldTest5EE.crt",
3578    "third_party/nist-pkits/certs/InvalidBasicSelfIssuedOldWithNewTest2EE.crt",
3579    "third_party/nist-pkits/certs/InvalidCASignatureTest2EE.crt",
3580    "third_party/nist-pkits/certs/InvalidCAnotAfterDateTest5EE.crt",
3581    "third_party/nist-pkits/certs/InvalidCAnotBeforeDateTest1EE.crt",
3582    "third_party/nist-pkits/certs/InvalidDNSnameConstraintsTest31EE.crt",
3583    "third_party/nist-pkits/certs/InvalidDNSnameConstraintsTest33EE.crt",
3584    "third_party/nist-pkits/certs/InvalidDNSnameConstraintsTest38EE.crt",
3585    "third_party/nist-pkits/certs/InvalidDNandRFC822nameConstraintsTest28EE.crt",
3586    "third_party/nist-pkits/certs/InvalidDNandRFC822nameConstraintsTest29EE.crt",
3587    "third_party/nist-pkits/certs/InvalidDNnameConstraintsTest10EE.crt",
3588    "third_party/nist-pkits/certs/InvalidDNnameConstraintsTest12EE.crt",
3589    "third_party/nist-pkits/certs/InvalidDNnameConstraintsTest13EE.crt",
3590    "third_party/nist-pkits/certs/InvalidDNnameConstraintsTest15EE.crt",
3591    "third_party/nist-pkits/certs/InvalidDNnameConstraintsTest16EE.crt",
3592    "third_party/nist-pkits/certs/InvalidDNnameConstraintsTest17EE.crt",
3593    "third_party/nist-pkits/certs/InvalidDNnameConstraintsTest20EE.crt",
3594    "third_party/nist-pkits/certs/InvalidDNnameConstraintsTest2EE.crt",
3595    "third_party/nist-pkits/certs/InvalidDNnameConstraintsTest3EE.crt",
3596    "third_party/nist-pkits/certs/InvalidDNnameConstraintsTest7EE.crt",
3597    "third_party/nist-pkits/certs/InvalidDNnameConstraintsTest8EE.crt",
3598    "third_party/nist-pkits/certs/InvalidDNnameConstraintsTest9EE.crt",
3599    "third_party/nist-pkits/certs/InvalidDSASignatureTest6EE.crt",
3600    "third_party/nist-pkits/certs/InvalidEESignatureTest3EE.crt",
3601    "third_party/nist-pkits/certs/InvalidEEnotAfterDateTest6EE.crt",
3602    "third_party/nist-pkits/certs/InvalidEEnotBeforeDateTest2EE.crt",
3603    "third_party/nist-pkits/certs/InvalidIDPwithindirectCRLTest23EE.crt",
3604    "third_party/nist-pkits/certs/InvalidIDPwithindirectCRLTest26EE.crt",
3605    "third_party/nist-pkits/certs/InvalidLongSerialNumberTest18EE.crt",
3606    "third_party/nist-pkits/certs/InvalidMappingFromanyPolicyTest7EE.crt",
3607    "third_party/nist-pkits/certs/InvalidMappingToanyPolicyTest8EE.crt",
3608    "third_party/nist-pkits/certs/InvalidMissingCRLTest1EE.crt",
3609    "third_party/nist-pkits/certs/InvalidMissingbasicConstraintsTest1EE.crt",
3610    "third_party/nist-pkits/certs/InvalidNameChainingOrderTest2EE.crt",
3611    "third_party/nist-pkits/certs/InvalidNameChainingTest1EE.crt",
3612    "third_party/nist-pkits/certs/InvalidNegativeSerialNumberTest15EE.crt",
3613    "third_party/nist-pkits/certs/InvalidOldCRLnextUpdateTest11EE.crt",
3614    "third_party/nist-pkits/certs/InvalidPolicyMappingTest10EE.crt",
3615    "third_party/nist-pkits/certs/InvalidPolicyMappingTest2EE.crt",
3616    "third_party/nist-pkits/certs/InvalidPolicyMappingTest4EE.crt",
3617    "third_party/nist-pkits/certs/InvalidRFC822nameConstraintsTest22EE.crt",
3618    "third_party/nist-pkits/certs/InvalidRFC822nameConstraintsTest24EE.crt",
3619    "third_party/nist-pkits/certs/InvalidRFC822nameConstraintsTest26EE.crt",
3620    "third_party/nist-pkits/certs/InvalidRevokedCATest2EE.crt",
3621    "third_party/nist-pkits/certs/InvalidRevokedEETest3EE.crt",
3622    "third_party/nist-pkits/certs/InvalidSelfIssuedinhibitAnyPolicyTest10EE.crt",
3623    "third_party/nist-pkits/certs/InvalidSelfIssuedinhibitAnyPolicyTest8EE.crt",
3624    "third_party/nist-pkits/certs/InvalidSelfIssuedinhibitPolicyMappingTest10EE.crt",
3625    "third_party/nist-pkits/certs/InvalidSelfIssuedinhibitPolicyMappingTest11EE.crt",
3626    "third_party/nist-pkits/certs/InvalidSelfIssuedinhibitPolicyMappingTest8EE.crt",
3627    "third_party/nist-pkits/certs/InvalidSelfIssuedinhibitPolicyMappingTest9EE.crt",
3628    "third_party/nist-pkits/certs/InvalidSelfIssuedpathLenConstraintTest16EE.crt",
3629    "third_party/nist-pkits/certs/InvalidSelfIssuedrequireExplicitPolicyTest7EE.crt",
3630    "third_party/nist-pkits/certs/InvalidSelfIssuedrequireExplicitPolicyTest8EE.crt",
3631    "third_party/nist-pkits/certs/InvalidSeparateCertificateandCRLKeysTest20EE.crt",
3632    "third_party/nist-pkits/certs/InvalidSeparateCertificateandCRLKeysTest21EE.crt",
3633    "third_party/nist-pkits/certs/InvalidURInameConstraintsTest35EE.crt",
3634    "third_party/nist-pkits/certs/InvalidURInameConstraintsTest37EE.crt",
3635    "third_party/nist-pkits/certs/InvalidUnknownCRLEntryExtensionTest8EE.crt",
3636    "third_party/nist-pkits/certs/InvalidUnknownCRLExtensionTest10EE.crt",
3637    "third_party/nist-pkits/certs/InvalidUnknownCRLExtensionTest9EE.crt",
3638    "third_party/nist-pkits/certs/InvalidUnknownCriticalCertificateExtensionTest2EE.crt",
3639    "third_party/nist-pkits/certs/InvalidWrongCRLTest6EE.crt",
3640    "third_party/nist-pkits/certs/InvalidcAFalseTest2EE.crt",
3641    "third_party/nist-pkits/certs/InvalidcAFalseTest3EE.crt",
3642    "third_party/nist-pkits/certs/InvalidcRLIssuerTest27EE.crt",
3643    "third_party/nist-pkits/certs/InvalidcRLIssuerTest31EE.crt",
3644    "third_party/nist-pkits/certs/InvalidcRLIssuerTest32EE.crt",
3645    "third_party/nist-pkits/certs/InvalidcRLIssuerTest34EE.crt",
3646    "third_party/nist-pkits/certs/InvalidcRLIssuerTest35EE.crt",
3647    "third_party/nist-pkits/certs/InvaliddeltaCRLIndicatorNoBaseTest1EE.crt",
3648    "third_party/nist-pkits/certs/InvaliddeltaCRLTest10EE.crt",
3649    "third_party/nist-pkits/certs/InvaliddeltaCRLTest3EE.crt",
3650    "third_party/nist-pkits/certs/InvaliddeltaCRLTest4EE.crt",
3651    "third_party/nist-pkits/certs/InvaliddeltaCRLTest6EE.crt",
3652    "third_party/nist-pkits/certs/InvaliddeltaCRLTest9EE.crt",
3653    "third_party/nist-pkits/certs/InvaliddistributionPointTest2EE.crt",
3654    "third_party/nist-pkits/certs/InvaliddistributionPointTest3EE.crt",
3655    "third_party/nist-pkits/certs/InvaliddistributionPointTest6EE.crt",
3656    "third_party/nist-pkits/certs/InvaliddistributionPointTest8EE.crt",
3657    "third_party/nist-pkits/certs/InvaliddistributionPointTest9EE.crt",
3658    "third_party/nist-pkits/certs/InvalidinhibitAnyPolicyTest1EE.crt",
3659    "third_party/nist-pkits/certs/InvalidinhibitAnyPolicyTest4EE.crt",
3660    "third_party/nist-pkits/certs/InvalidinhibitAnyPolicyTest5EE.crt",
3661    "third_party/nist-pkits/certs/InvalidinhibitAnyPolicyTest6EE.crt",
3662    "third_party/nist-pkits/certs/InvalidinhibitPolicyMappingTest1EE.crt",
3663    "third_party/nist-pkits/certs/InvalidinhibitPolicyMappingTest3EE.crt",
3664    "third_party/nist-pkits/certs/InvalidinhibitPolicyMappingTest5EE.crt",
3665    "third_party/nist-pkits/certs/InvalidinhibitPolicyMappingTest6EE.crt",
3666    "third_party/nist-pkits/certs/InvalidkeyUsageCriticalcRLSignFalseTest4EE.crt",
3667    "third_party/nist-pkits/certs/InvalidkeyUsageCriticalkeyCertSignFalseTest1EE.crt",
3668    "third_party/nist-pkits/certs/InvalidkeyUsageNotCriticalcRLSignFalseTest5EE.crt",
3669    "third_party/nist-pkits/certs/InvalidkeyUsageNotCriticalkeyCertSignFalseTest2EE.crt",
3670    "third_party/nist-pkits/certs/InvalidonlyContainsAttributeCertsTest14EE.crt",
3671    "third_party/nist-pkits/certs/InvalidonlyContainsCACertsTest12EE.crt",
3672    "third_party/nist-pkits/certs/InvalidonlyContainsUserCertsTest11EE.crt",
3673    "third_party/nist-pkits/certs/InvalidonlySomeReasonsTest15EE.crt",
3674    "third_party/nist-pkits/certs/InvalidonlySomeReasonsTest16EE.crt",
3675    "third_party/nist-pkits/certs/InvalidonlySomeReasonsTest17EE.crt",
3676    "third_party/nist-pkits/certs/InvalidonlySomeReasonsTest20EE.crt",
3677    "third_party/nist-pkits/certs/InvalidonlySomeReasonsTest21EE.crt",
3678    "third_party/nist-pkits/certs/InvalidpathLenConstraintTest10EE.crt",
3679    "third_party/nist-pkits/certs/InvalidpathLenConstraintTest11EE.crt",
3680    "third_party/nist-pkits/certs/InvalidpathLenConstraintTest12EE.crt",
3681    "third_party/nist-pkits/certs/InvalidpathLenConstraintTest5EE.crt",
3682    "third_party/nist-pkits/certs/InvalidpathLenConstraintTest6EE.crt",
3683    "third_party/nist-pkits/certs/InvalidpathLenConstraintTest9EE.crt",
3684    "third_party/nist-pkits/certs/Invalidpre2000CRLnextUpdateTest12EE.crt",
3685    "third_party/nist-pkits/certs/Invalidpre2000UTCEEnotAfterDateTest7EE.crt",
3686    "third_party/nist-pkits/certs/InvalidrequireExplicitPolicyTest3EE.crt",
3687    "third_party/nist-pkits/certs/InvalidrequireExplicitPolicyTest5EE.crt",
3688    "third_party/nist-pkits/certs/LongSerialNumberCACert.crt",
3689    "third_party/nist-pkits/certs/Mapping1to2CACert.crt",
3690    "third_party/nist-pkits/certs/MappingFromanyPolicyCACert.crt",
3691    "third_party/nist-pkits/certs/MappingToanyPolicyCACert.crt",
3692    "third_party/nist-pkits/certs/MissingbasicConstraintsCACert.crt",
3693    "third_party/nist-pkits/certs/NameOrderingCACert.crt",
3694    "third_party/nist-pkits/certs/NegativeSerialNumberCACert.crt",
3695    "third_party/nist-pkits/certs/NoCRLCACert.crt",
3696    "third_party/nist-pkits/certs/NoPoliciesCACert.crt",
3697    "third_party/nist-pkits/certs/NoissuingDistributionPointCACert.crt",
3698    "third_party/nist-pkits/certs/OldCRLnextUpdateCACert.crt",
3699    "third_party/nist-pkits/certs/OverlappingPoliciesTest6EE.crt",
3700    "third_party/nist-pkits/certs/P12Mapping1to3CACert.crt",
3701    "third_party/nist-pkits/certs/P12Mapping1to3subCACert.crt",
3702    "third_party/nist-pkits/certs/P12Mapping1to3subsubCACert.crt",
3703    "third_party/nist-pkits/certs/P1Mapping1to234CACert.crt",
3704    "third_party/nist-pkits/certs/P1Mapping1to234subCACert.crt",
3705    "third_party/nist-pkits/certs/P1anyPolicyMapping1to2CACert.crt",
3706    "third_party/nist-pkits/certs/PanyPolicyMapping1to2CACert.crt",
3707    "third_party/nist-pkits/certs/PoliciesP1234CACert.crt",
3708    "third_party/nist-pkits/certs/PoliciesP1234subCAP123Cert.crt",
3709    "third_party/nist-pkits/certs/PoliciesP1234subsubCAP123P12Cert.crt",
3710    "third_party/nist-pkits/certs/PoliciesP123CACert.crt",
3711    "third_party/nist-pkits/certs/PoliciesP123subCAP12Cert.crt",
3712    "third_party/nist-pkits/certs/PoliciesP123subsubCAP12P1Cert.crt",
3713    "third_party/nist-pkits/certs/PoliciesP123subsubCAP12P2Cert.crt",
3714    "third_party/nist-pkits/certs/PoliciesP123subsubsubCAP12P2P1Cert.crt",
3715    "third_party/nist-pkits/certs/PoliciesP12CACert.crt",
3716    "third_party/nist-pkits/certs/PoliciesP12subCAP1Cert.crt",
3717    "third_party/nist-pkits/certs/PoliciesP12subsubCAP1P2Cert.crt",
3718    "third_party/nist-pkits/certs/PoliciesP2subCA2Cert.crt",
3719    "third_party/nist-pkits/certs/PoliciesP2subCACert.crt",
3720    "third_party/nist-pkits/certs/PoliciesP3CACert.crt",
3721    "third_party/nist-pkits/certs/RFC3280MandatoryAttributeTypesCACert.crt",
3722    "third_party/nist-pkits/certs/RFC3280OptionalAttributeTypesCACert.crt",
3723    "third_party/nist-pkits/certs/RevokedsubCACert.crt",
3724    "third_party/nist-pkits/certs/RolloverfromPrintableStringtoUTF8StringCACert.crt",
3725    "third_party/nist-pkits/certs/SeparateCertificateandCRLKeysCA2CRLSigningCert.crt",
3726    "third_party/nist-pkits/certs/SeparateCertificateandCRLKeysCA2CertificateSigningCACert.crt",
3727    "third_party/nist-pkits/certs/SeparateCertificateandCRLKeysCRLSigningCert.crt",
3728    "third_party/nist-pkits/certs/SeparateCertificateandCRLKeysCertificateSigningCACert.crt",
3729    "third_party/nist-pkits/certs/TrustAnchorRootCertificate.crt",
3730    "third_party/nist-pkits/certs/TwoCRLsCACert.crt",
3731    "third_party/nist-pkits/certs/UIDCACert.crt",
3732    "third_party/nist-pkits/certs/UTF8StringCaseInsensitiveMatchCACert.crt",
3733    "third_party/nist-pkits/certs/UTF8StringEncodedNamesCACert.crt",
3734    "third_party/nist-pkits/certs/UnknownCRLEntryExtensionCACert.crt",
3735    "third_party/nist-pkits/certs/UnknownCRLExtensionCACert.crt",
3736    "third_party/nist-pkits/certs/UserNoticeQualifierTest15EE.crt",
3737    "third_party/nist-pkits/certs/UserNoticeQualifierTest16EE.crt",
3738    "third_party/nist-pkits/certs/UserNoticeQualifierTest17EE.crt",
3739    "third_party/nist-pkits/certs/UserNoticeQualifierTest18EE.crt",
3740    "third_party/nist-pkits/certs/UserNoticeQualifierTest19EE.crt",
3741    "third_party/nist-pkits/certs/ValidBasicSelfIssuedCRLSigningKeyTest6EE.crt",
3742    "third_party/nist-pkits/certs/ValidBasicSelfIssuedNewWithOldTest3EE.crt",
3743    "third_party/nist-pkits/certs/ValidBasicSelfIssuedNewWithOldTest4EE.crt",
3744    "third_party/nist-pkits/certs/ValidBasicSelfIssuedOldWithNewTest1EE.crt",
3745    "third_party/nist-pkits/certs/ValidCertificatePathTest1EE.crt",
3746    "third_party/nist-pkits/certs/ValidDNSnameConstraintsTest30EE.crt",
3747    "third_party/nist-pkits/certs/ValidDNSnameConstraintsTest32EE.crt",
3748    "third_party/nist-pkits/certs/ValidDNandRFC822nameConstraintsTest27EE.crt",
3749    "third_party/nist-pkits/certs/ValidDNnameConstraintsTest11EE.crt",
3750    "third_party/nist-pkits/certs/ValidDNnameConstraintsTest14EE.crt",
3751    "third_party/nist-pkits/certs/ValidDNnameConstraintsTest18EE.crt",
3752    "third_party/nist-pkits/certs/ValidDNnameConstraintsTest19EE.crt",
3753    "third_party/nist-pkits/certs/ValidDNnameConstraintsTest1EE.crt",
3754    "third_party/nist-pkits/certs/ValidDNnameConstraintsTest4EE.crt",
3755    "third_party/nist-pkits/certs/ValidDNnameConstraintsTest5EE.crt",
3756    "third_party/nist-pkits/certs/ValidDNnameConstraintsTest6EE.crt",
3757    "third_party/nist-pkits/certs/ValidDSAParameterInheritanceTest5EE.crt",
3758    "third_party/nist-pkits/certs/ValidDSASignaturesTest4EE.crt",
3759    "third_party/nist-pkits/certs/ValidGeneralizedTimeCRLnextUpdateTest13EE.crt",
3760    "third_party/nist-pkits/certs/ValidGeneralizedTimenotAfterDateTest8EE.crt",
3761    "third_party/nist-pkits/certs/ValidGeneralizedTimenotBeforeDateTest4EE.crt",
3762    "third_party/nist-pkits/certs/ValidIDPwithindirectCRLTest22EE.crt",
3763    "third_party/nist-pkits/certs/ValidIDPwithindirectCRLTest24EE.crt",
3764    "third_party/nist-pkits/certs/ValidIDPwithindirectCRLTest25EE.crt",
3765    "third_party/nist-pkits/certs/ValidLongSerialNumberTest16EE.crt",
3766    "third_party/nist-pkits/certs/ValidLongSerialNumberTest17EE.crt",
3767    "third_party/nist-pkits/certs/ValidNameChainingCapitalizationTest5EE.crt",
3768    "third_party/nist-pkits/certs/ValidNameChainingWhitespaceTest3EE.crt",
3769    "third_party/nist-pkits/certs/ValidNameChainingWhitespaceTest4EE.crt",
3770    "third_party/nist-pkits/certs/ValidNameUIDsTest6EE.crt",
3771    "third_party/nist-pkits/certs/ValidNegativeSerialNumberTest14EE.crt",
3772    "third_party/nist-pkits/certs/ValidNoissuingDistributionPointTest10EE.crt",
3773    "third_party/nist-pkits/certs/ValidPolicyMappingTest11EE.crt",
3774    "third_party/nist-pkits/certs/ValidPolicyMappingTest12EE.crt",
3775    "third_party/nist-pkits/certs/ValidPolicyMappingTest13EE.crt",
3776    "third_party/nist-pkits/certs/ValidPolicyMappingTest14EE.crt",
3777    "third_party/nist-pkits/certs/ValidPolicyMappingTest1EE.crt",
3778    "third_party/nist-pkits/certs/ValidPolicyMappingTest3EE.crt",
3779    "third_party/nist-pkits/certs/ValidPolicyMappingTest5EE.crt",
3780    "third_party/nist-pkits/certs/ValidPolicyMappingTest6EE.crt",
3781    "third_party/nist-pkits/certs/ValidPolicyMappingTest9EE.crt",
3782    "third_party/nist-pkits/certs/ValidRFC3280MandatoryAttributeTypesTest7EE.crt",
3783    "third_party/nist-pkits/certs/ValidRFC3280OptionalAttributeTypesTest8EE.crt",
3784    "third_party/nist-pkits/certs/ValidRFC822nameConstraintsTest21EE.crt",
3785    "third_party/nist-pkits/certs/ValidRFC822nameConstraintsTest23EE.crt",
3786    "third_party/nist-pkits/certs/ValidRFC822nameConstraintsTest25EE.crt",
3787    "third_party/nist-pkits/certs/ValidRolloverfromPrintableStringtoUTF8StringTest10EE.crt",
3788    "third_party/nist-pkits/certs/ValidSelfIssuedinhibitAnyPolicyTest7EE.crt",
3789    "third_party/nist-pkits/certs/ValidSelfIssuedinhibitAnyPolicyTest9EE.crt",
3790    "third_party/nist-pkits/certs/ValidSelfIssuedinhibitPolicyMappingTest7EE.crt",
3791    "third_party/nist-pkits/certs/ValidSelfIssuedpathLenConstraintTest15EE.crt",
3792    "third_party/nist-pkits/certs/ValidSelfIssuedpathLenConstraintTest17EE.crt",
3793    "third_party/nist-pkits/certs/ValidSelfIssuedrequireExplicitPolicyTest6EE.crt",
3794    "third_party/nist-pkits/certs/ValidSeparateCertificateandCRLKeysTest19EE.crt",
3795    "third_party/nist-pkits/certs/ValidTwoCRLsTest7EE.crt",
3796    "third_party/nist-pkits/certs/ValidURInameConstraintsTest34EE.crt",
3797    "third_party/nist-pkits/certs/ValidURInameConstraintsTest36EE.crt",
3798    "third_party/nist-pkits/certs/ValidUTF8StringCaseInsensitiveMatchTest11EE.crt",
3799    "third_party/nist-pkits/certs/ValidUTF8StringEncodedNamesTest9EE.crt",
3800    "third_party/nist-pkits/certs/ValidUnknownNotCriticalCertificateExtensionTest1EE.crt",
3801    "third_party/nist-pkits/certs/ValidbasicConstraintsNotCriticalTest4EE.crt",
3802    "third_party/nist-pkits/certs/ValidcRLIssuerTest28EE.crt",
3803    "third_party/nist-pkits/certs/ValidcRLIssuerTest29EE.crt",
3804    "third_party/nist-pkits/certs/ValidcRLIssuerTest30EE.crt",
3805    "third_party/nist-pkits/certs/ValidcRLIssuerTest33EE.crt",
3806    "third_party/nist-pkits/certs/ValiddeltaCRLTest2EE.crt",
3807    "third_party/nist-pkits/certs/ValiddeltaCRLTest5EE.crt",
3808    "third_party/nist-pkits/certs/ValiddeltaCRLTest7EE.crt",
3809    "third_party/nist-pkits/certs/ValiddeltaCRLTest8EE.crt",
3810    "third_party/nist-pkits/certs/ValiddistributionPointTest1EE.crt",
3811    "third_party/nist-pkits/certs/ValiddistributionPointTest4EE.crt",
3812    "third_party/nist-pkits/certs/ValiddistributionPointTest5EE.crt",
3813    "third_party/nist-pkits/certs/ValiddistributionPointTest7EE.crt",
3814    "third_party/nist-pkits/certs/ValidinhibitAnyPolicyTest2EE.crt",
3815    "third_party/nist-pkits/certs/ValidinhibitPolicyMappingTest2EE.crt",
3816    "third_party/nist-pkits/certs/ValidinhibitPolicyMappingTest4EE.crt",
3817    "third_party/nist-pkits/certs/ValidkeyUsageNotCriticalTest3EE.crt",
3818    "third_party/nist-pkits/certs/ValidonlyContainsCACertsTest13EE.crt",
3819    "third_party/nist-pkits/certs/ValidonlySomeReasonsTest18EE.crt",
3820    "third_party/nist-pkits/certs/ValidonlySomeReasonsTest19EE.crt",
3821    "third_party/nist-pkits/certs/ValidpathLenConstraintTest13EE.crt",
3822    "third_party/nist-pkits/certs/ValidpathLenConstraintTest14EE.crt",
3823    "third_party/nist-pkits/certs/ValidpathLenConstraintTest7EE.crt",
3824    "third_party/nist-pkits/certs/ValidpathLenConstraintTest8EE.crt",
3825    "third_party/nist-pkits/certs/Validpre2000UTCnotBeforeDateTest3EE.crt",
3826    "third_party/nist-pkits/certs/ValidrequireExplicitPolicyTest1EE.crt",
3827    "third_party/nist-pkits/certs/ValidrequireExplicitPolicyTest2EE.crt",
3828    "third_party/nist-pkits/certs/ValidrequireExplicitPolicyTest4EE.crt",
3829    "third_party/nist-pkits/certs/WrongCRLCACert.crt",
3830    "third_party/nist-pkits/certs/anyPolicyCACert.crt",
3831    "third_party/nist-pkits/certs/basicConstraintsCriticalcAFalseCACert.crt",
3832    "third_party/nist-pkits/certs/basicConstraintsNotCriticalCACert.crt",
3833    "third_party/nist-pkits/certs/basicConstraintsNotCriticalcAFalseCACert.crt",
3834    "third_party/nist-pkits/certs/deltaCRLCA1Cert.crt",
3835    "third_party/nist-pkits/certs/deltaCRLCA2Cert.crt",
3836    "third_party/nist-pkits/certs/deltaCRLCA3Cert.crt",
3837    "third_party/nist-pkits/certs/deltaCRLIndicatorNoBaseCACert.crt",
3838    "third_party/nist-pkits/certs/distributionPoint1CACert.crt",
3839    "third_party/nist-pkits/certs/distributionPoint2CACert.crt",
3840    "third_party/nist-pkits/certs/indirectCRLCA1Cert.crt",
3841    "third_party/nist-pkits/certs/indirectCRLCA2Cert.crt",
3842    "third_party/nist-pkits/certs/indirectCRLCA3Cert.crt",
3843    "third_party/nist-pkits/certs/indirectCRLCA3cRLIssuerCert.crt",
3844    "third_party/nist-pkits/certs/indirectCRLCA4Cert.crt",
3845    "third_party/nist-pkits/certs/indirectCRLCA4cRLIssuerCert.crt",
3846    "third_party/nist-pkits/certs/indirectCRLCA5Cert.crt",
3847    "third_party/nist-pkits/certs/indirectCRLCA6Cert.crt",
3848    "third_party/nist-pkits/certs/inhibitAnyPolicy0CACert.crt",
3849    "third_party/nist-pkits/certs/inhibitAnyPolicy1CACert.crt",
3850    "third_party/nist-pkits/certs/inhibitAnyPolicy1SelfIssuedCACert.crt",
3851    "third_party/nist-pkits/certs/inhibitAnyPolicy1SelfIssuedsubCA2Cert.crt",
3852    "third_party/nist-pkits/certs/inhibitAnyPolicy1subCA1Cert.crt",
3853    "third_party/nist-pkits/certs/inhibitAnyPolicy1subCA2Cert.crt",
3854    "third_party/nist-pkits/certs/inhibitAnyPolicy1subCAIAP5Cert.crt",
3855    "third_party/nist-pkits/certs/inhibitAnyPolicy1subsubCA2Cert.crt",
3856    "third_party/nist-pkits/certs/inhibitAnyPolicy5CACert.crt",
3857    "third_party/nist-pkits/certs/inhibitAnyPolicy5subCACert.crt",
3858    "third_party/nist-pkits/certs/inhibitAnyPolicy5subsubCACert.crt",
3859    "third_party/nist-pkits/certs/inhibitAnyPolicyTest3EE.crt",
3860    "third_party/nist-pkits/certs/inhibitPolicyMapping0CACert.crt",
3861    "third_party/nist-pkits/certs/inhibitPolicyMapping0subCACert.crt",
3862    "third_party/nist-pkits/certs/inhibitPolicyMapping1P12CACert.crt",
3863    "third_party/nist-pkits/certs/inhibitPolicyMapping1P12subCACert.crt",
3864    "third_party/nist-pkits/certs/inhibitPolicyMapping1P12subCAIPM5Cert.crt",
3865    "third_party/nist-pkits/certs/inhibitPolicyMapping1P12subsubCACert.crt",
3866    "third_party/nist-pkits/certs/inhibitPolicyMapping1P12subsubCAIPM5Cert.crt",
3867    "third_party/nist-pkits/certs/inhibitPolicyMapping1P1CACert.crt",
3868    "third_party/nist-pkits/certs/inhibitPolicyMapping1P1SelfIssuedCACert.crt",
3869    "third_party/nist-pkits/certs/inhibitPolicyMapping1P1SelfIssuedsubCACert.crt",
3870    "third_party/nist-pkits/certs/inhibitPolicyMapping1P1subCACert.crt",
3871    "third_party/nist-pkits/certs/inhibitPolicyMapping1P1subsubCACert.crt",
3872    "third_party/nist-pkits/certs/inhibitPolicyMapping5CACert.crt",
3873    "third_party/nist-pkits/certs/inhibitPolicyMapping5subCACert.crt",
3874    "third_party/nist-pkits/certs/inhibitPolicyMapping5subsubCACert.crt",
3875    "third_party/nist-pkits/certs/inhibitPolicyMapping5subsubsubCACert.crt",
3876    "third_party/nist-pkits/certs/keyUsageCriticalcRLSignFalseCACert.crt",
3877    "third_party/nist-pkits/certs/keyUsageCriticalkeyCertSignFalseCACert.crt",
3878    "third_party/nist-pkits/certs/keyUsageNotCriticalCACert.crt",
3879    "third_party/nist-pkits/certs/keyUsageNotCriticalcRLSignFalseCACert.crt",
3880    "third_party/nist-pkits/certs/keyUsageNotCriticalkeyCertSignFalseCACert.crt",
3881    "third_party/nist-pkits/certs/nameConstraintsDN1CACert.crt",
3882    "third_party/nist-pkits/certs/nameConstraintsDN1SelfIssuedCACert.crt",
3883    "third_party/nist-pkits/certs/nameConstraintsDN1subCA1Cert.crt",
3884    "third_party/nist-pkits/certs/nameConstraintsDN1subCA2Cert.crt",
3885    "third_party/nist-pkits/certs/nameConstraintsDN1subCA3Cert.crt",
3886    "third_party/nist-pkits/certs/nameConstraintsDN2CACert.crt",
3887    "third_party/nist-pkits/certs/nameConstraintsDN3CACert.crt",
3888    "third_party/nist-pkits/certs/nameConstraintsDN3subCA1Cert.crt",
3889    "third_party/nist-pkits/certs/nameConstraintsDN3subCA2Cert.crt",
3890    "third_party/nist-pkits/certs/nameConstraintsDN4CACert.crt",
3891    "third_party/nist-pkits/certs/nameConstraintsDN5CACert.crt",
3892    "third_party/nist-pkits/certs/nameConstraintsDNS1CACert.crt",
3893    "third_party/nist-pkits/certs/nameConstraintsDNS2CACert.crt",
3894    "third_party/nist-pkits/certs/nameConstraintsRFC822CA1Cert.crt",
3895    "third_party/nist-pkits/certs/nameConstraintsRFC822CA2Cert.crt",
3896    "third_party/nist-pkits/certs/nameConstraintsRFC822CA3Cert.crt",
3897    "third_party/nist-pkits/certs/nameConstraintsURI1CACert.crt",
3898    "third_party/nist-pkits/certs/nameConstraintsURI2CACert.crt",
3899    "third_party/nist-pkits/certs/onlyContainsAttributeCertsCACert.crt",
3900    "third_party/nist-pkits/certs/onlyContainsCACertsCACert.crt",
3901    "third_party/nist-pkits/certs/onlyContainsUserCertsCACert.crt",
3902    "third_party/nist-pkits/certs/onlySomeReasonsCA1Cert.crt",
3903    "third_party/nist-pkits/certs/onlySomeReasonsCA2Cert.crt",
3904    "third_party/nist-pkits/certs/onlySomeReasonsCA3Cert.crt",
3905    "third_party/nist-pkits/certs/onlySomeReasonsCA4Cert.crt",
3906    "third_party/nist-pkits/certs/pathLenConstraint0CACert.crt",
3907    "third_party/nist-pkits/certs/pathLenConstraint0SelfIssuedCACert.crt",
3908    "third_party/nist-pkits/certs/pathLenConstraint0subCA2Cert.crt",
3909    "third_party/nist-pkits/certs/pathLenConstraint0subCACert.crt",
3910    "third_party/nist-pkits/certs/pathLenConstraint1CACert.crt",
3911    "third_party/nist-pkits/certs/pathLenConstraint1SelfIssuedCACert.crt",
3912    "third_party/nist-pkits/certs/pathLenConstraint1SelfIssuedsubCACert.crt",
3913    "third_party/nist-pkits/certs/pathLenConstraint1subCACert.crt",
3914    "third_party/nist-pkits/certs/pathLenConstraint6CACert.crt",
3915    "third_party/nist-pkits/certs/pathLenConstraint6subCA0Cert.crt",
3916    "third_party/nist-pkits/certs/pathLenConstraint6subCA1Cert.crt",
3917    "third_party/nist-pkits/certs/pathLenConstraint6subCA4Cert.crt",
3918    "third_party/nist-pkits/certs/pathLenConstraint6subsubCA00Cert.crt",
3919    "third_party/nist-pkits/certs/pathLenConstraint6subsubCA11Cert.crt",
3920    "third_party/nist-pkits/certs/pathLenConstraint6subsubCA41Cert.crt",
3921    "third_party/nist-pkits/certs/pathLenConstraint6subsubsubCA11XCert.crt",
3922    "third_party/nist-pkits/certs/pathLenConstraint6subsubsubCA41XCert.crt",
3923    "third_party/nist-pkits/certs/pre2000CRLnextUpdateCACert.crt",
3924    "third_party/nist-pkits/certs/requireExplicitPolicy0CACert.crt",
3925    "third_party/nist-pkits/certs/requireExplicitPolicy0subCACert.crt",
3926    "third_party/nist-pkits/certs/requireExplicitPolicy0subsubCACert.crt",
3927    "third_party/nist-pkits/certs/requireExplicitPolicy0subsubsubCACert.crt",
3928    "third_party/nist-pkits/certs/requireExplicitPolicy10CACert.crt",
3929    "third_party/nist-pkits/certs/requireExplicitPolicy10subCACert.crt",
3930    "third_party/nist-pkits/certs/requireExplicitPolicy10subsubCACert.crt",
3931    "third_party/nist-pkits/certs/requireExplicitPolicy10subsubsubCACert.crt",
3932    "third_party/nist-pkits/certs/requireExplicitPolicy2CACert.crt",
3933    "third_party/nist-pkits/certs/requireExplicitPolicy2SelfIssuedCACert.crt",
3934    "third_party/nist-pkits/certs/requireExplicitPolicy2SelfIssuedsubCACert.crt",
3935    "third_party/nist-pkits/certs/requireExplicitPolicy2subCACert.crt",
3936    "third_party/nist-pkits/certs/requireExplicitPolicy4CACert.crt",
3937    "third_party/nist-pkits/certs/requireExplicitPolicy4subCACert.crt",
3938    "third_party/nist-pkits/certs/requireExplicitPolicy4subsubCACert.crt",
3939    "third_party/nist-pkits/certs/requireExplicitPolicy4subsubsubCACert.crt",
3940    "third_party/nist-pkits/certs/requireExplicitPolicy5CACert.crt",
3941    "third_party/nist-pkits/certs/requireExplicitPolicy5subCACert.crt",
3942    "third_party/nist-pkits/certs/requireExplicitPolicy5subsubCACert.crt",
3943    "third_party/nist-pkits/certs/requireExplicitPolicy5subsubsubCACert.crt",
3944    "third_party/nist-pkits/certs/requireExplicitPolicy7CACert.crt",
3945    "third_party/nist-pkits/certs/requireExplicitPolicy7subCARE2Cert.crt",
3946    "third_party/nist-pkits/certs/requireExplicitPolicy7subsubCARE2RE4Cert.crt",
3947    "third_party/nist-pkits/certs/requireExplicitPolicy7subsubsubCARE2RE4Cert.crt",
3948    "third_party/nist-pkits/crls/BadCRLIssuerNameCACRL.crl",
3949    "third_party/nist-pkits/crls/BadCRLSignatureCACRL.crl",
3950    "third_party/nist-pkits/crls/BadSignedCACRL.crl",
3951    "third_party/nist-pkits/crls/BadnotAfterDateCACRL.crl",
3952    "third_party/nist-pkits/crls/BadnotBeforeDateCACRL.crl",
3953    "third_party/nist-pkits/crls/BasicSelfIssuedCRLSigningKeyCACRL.crl",
3954    "third_party/nist-pkits/crls/BasicSelfIssuedCRLSigningKeyCRLCertCRL.crl",
3955    "third_party/nist-pkits/crls/BasicSelfIssuedNewKeyCACRL.crl",
3956    "third_party/nist-pkits/crls/BasicSelfIssuedOldKeyCACRL.crl",
3957    "third_party/nist-pkits/crls/BasicSelfIssuedOldKeySelfIssuedCertCRL.crl",
3958    "third_party/nist-pkits/crls/DSACACRL.crl",
3959    "third_party/nist-pkits/crls/DSAParametersInheritedCACRL.crl",
3960    "third_party/nist-pkits/crls/GeneralizedTimeCRLnextUpdateCACRL.crl",
3961    "third_party/nist-pkits/crls/GoodCACRL.crl",
3962    "third_party/nist-pkits/crls/GoodsubCACRL.crl",
3963    "third_party/nist-pkits/crls/GoodsubCAPanyPolicyMapping1to2CACRL.crl",
3964    "third_party/nist-pkits/crls/LongSerialNumberCACRL.crl",
3965    "third_party/nist-pkits/crls/Mapping1to2CACRL.crl",
3966    "third_party/nist-pkits/crls/MappingFromanyPolicyCACRL.crl",
3967    "third_party/nist-pkits/crls/MappingToanyPolicyCACRL.crl",
3968    "third_party/nist-pkits/crls/MissingbasicConstraintsCACRL.crl",
3969    "third_party/nist-pkits/crls/NameOrderCACRL.crl",
3970    "third_party/nist-pkits/crls/NegativeSerialNumberCACRL.crl",
3971    "third_party/nist-pkits/crls/NoPoliciesCACRL.crl",
3972    "third_party/nist-pkits/crls/NoissuingDistributionPointCACRL.crl",
3973    "third_party/nist-pkits/crls/OldCRLnextUpdateCACRL.crl",
3974    "third_party/nist-pkits/crls/P12Mapping1to3CACRL.crl",
3975    "third_party/nist-pkits/crls/P12Mapping1to3subCACRL.crl",
3976    "third_party/nist-pkits/crls/P12Mapping1to3subsubCACRL.crl",
3977    "third_party/nist-pkits/crls/P1Mapping1to234CACRL.crl",
3978    "third_party/nist-pkits/crls/P1Mapping1to234subCACRL.crl",
3979    "third_party/nist-pkits/crls/P1anyPolicyMapping1to2CACRL.crl",
3980    "third_party/nist-pkits/crls/PanyPolicyMapping1to2CACRL.crl",
3981    "third_party/nist-pkits/crls/PoliciesP1234CACRL.crl",
3982    "third_party/nist-pkits/crls/PoliciesP1234subCAP123CRL.crl",
3983    "third_party/nist-pkits/crls/PoliciesP1234subsubCAP123P12CRL.crl",
3984    "third_party/nist-pkits/crls/PoliciesP123CACRL.crl",
3985    "third_party/nist-pkits/crls/PoliciesP123subCAP12CRL.crl",
3986    "third_party/nist-pkits/crls/PoliciesP123subsubCAP12P1CRL.crl",
3987    "third_party/nist-pkits/crls/PoliciesP123subsubCAP2P2CRL.crl",
3988    "third_party/nist-pkits/crls/PoliciesP123subsubsubCAP12P2P1CRL.crl",
3989    "third_party/nist-pkits/crls/PoliciesP12CACRL.crl",
3990    "third_party/nist-pkits/crls/PoliciesP12subCAP1CRL.crl",
3991    "third_party/nist-pkits/crls/PoliciesP12subsubCAP1P2CRL.crl",
3992    "third_party/nist-pkits/crls/PoliciesP2subCA2CRL.crl",
3993    "third_party/nist-pkits/crls/PoliciesP2subCACRL.crl",
3994    "third_party/nist-pkits/crls/PoliciesP3CACRL.crl",
3995    "third_party/nist-pkits/crls/RFC3280MandatoryAttributeTypesCACRL.crl",
3996    "third_party/nist-pkits/crls/RFC3280OptionalAttributeTypesCACRL.crl",
3997    "third_party/nist-pkits/crls/RevokedsubCACRL.crl",
3998    "third_party/nist-pkits/crls/RolloverfromPrintableStringtoUTF8StringCACRL.crl",
3999    "third_party/nist-pkits/crls/SeparateCertificateandCRLKeysCA2CRL.crl",
4000    "third_party/nist-pkits/crls/SeparateCertificateandCRLKeysCRL.crl",
4001    "third_party/nist-pkits/crls/TrustAnchorRootCRL.crl",
4002    "third_party/nist-pkits/crls/TwoCRLsCABadCRL.crl",
4003    "third_party/nist-pkits/crls/TwoCRLsCAGoodCRL.crl",
4004    "third_party/nist-pkits/crls/UIDCACRL.crl",
4005    "third_party/nist-pkits/crls/UTF8StringCaseInsensitiveMatchCACRL.crl",
4006    "third_party/nist-pkits/crls/UTF8StringEncodedNamesCACRL.crl",
4007    "third_party/nist-pkits/crls/UnknownCRLEntryExtensionCACRL.crl",
4008    "third_party/nist-pkits/crls/UnknownCRLExtensionCACRL.crl",
4009    "third_party/nist-pkits/crls/WrongCRLCACRL.crl",
4010    "third_party/nist-pkits/crls/anyPolicyCACRL.crl",
4011    "third_party/nist-pkits/crls/basicConstraintsCriticalcAFalseCACRL.crl",
4012    "third_party/nist-pkits/crls/basicConstraintsNotCriticalCACRL.crl",
4013    "third_party/nist-pkits/crls/basicConstraintsNotCriticalcAFalseCACRL.crl",
4014    "third_party/nist-pkits/crls/deltaCRLCA1CRL.crl",
4015    "third_party/nist-pkits/crls/deltaCRLCA1deltaCRL.crl",
4016    "third_party/nist-pkits/crls/deltaCRLCA2CRL.crl",
4017    "third_party/nist-pkits/crls/deltaCRLCA2deltaCRL.crl",
4018    "third_party/nist-pkits/crls/deltaCRLCA3CRL.crl",
4019    "third_party/nist-pkits/crls/deltaCRLCA3deltaCRL.crl",
4020    "third_party/nist-pkits/crls/deltaCRLIndicatorNoBaseCACRL.crl",
4021    "third_party/nist-pkits/crls/distributionPoint1CACRL.crl",
4022    "third_party/nist-pkits/crls/distributionPoint2CACRL.crl",
4023    "third_party/nist-pkits/crls/indirectCRLCA1CRL.crl",
4024    "third_party/nist-pkits/crls/indirectCRLCA3CRL.crl",
4025    "third_party/nist-pkits/crls/indirectCRLCA3cRLIssuerCRL.crl",
4026    "third_party/nist-pkits/crls/indirectCRLCA4cRLIssuerCRL.crl",
4027    "third_party/nist-pkits/crls/indirectCRLCA5CRL.crl",
4028    "third_party/nist-pkits/crls/inhibitAnyPolicy0CACRL.crl",
4029    "third_party/nist-pkits/crls/inhibitAnyPolicy1CACRL.crl",
4030    "third_party/nist-pkits/crls/inhibitAnyPolicy1subCA1CRL.crl",
4031    "third_party/nist-pkits/crls/inhibitAnyPolicy1subCA2CRL.crl",
4032    "third_party/nist-pkits/crls/inhibitAnyPolicy1subCAIAP5CRL.crl",
4033    "third_party/nist-pkits/crls/inhibitAnyPolicy1subsubCA2CRL.crl",
4034    "third_party/nist-pkits/crls/inhibitAnyPolicy5CACRL.crl",
4035    "third_party/nist-pkits/crls/inhibitAnyPolicy5subCACRL.crl",
4036    "third_party/nist-pkits/crls/inhibitAnyPolicy5subsubCACRL.crl",
4037    "third_party/nist-pkits/crls/inhibitPolicyMapping0CACRL.crl",
4038    "third_party/nist-pkits/crls/inhibitPolicyMapping0subCACRL.crl",
4039    "third_party/nist-pkits/crls/inhibitPolicyMapping1P12CACRL.crl",
4040    "third_party/nist-pkits/crls/inhibitPolicyMapping1P12subCACRL.crl",
4041    "third_party/nist-pkits/crls/inhibitPolicyMapping1P12subCAIPM5CRL.crl",
4042    "third_party/nist-pkits/crls/inhibitPolicyMapping1P12subsubCACRL.crl",
4043    "third_party/nist-pkits/crls/inhibitPolicyMapping1P12subsubCAIPM5CRL.crl",
4044    "third_party/nist-pkits/crls/inhibitPolicyMapping1P1CACRL.crl",
4045    "third_party/nist-pkits/crls/inhibitPolicyMapping1P1subCACRL.crl",
4046    "third_party/nist-pkits/crls/inhibitPolicyMapping1P1subsubCACRL.crl",
4047    "third_party/nist-pkits/crls/inhibitPolicyMapping5CACRL.crl",
4048    "third_party/nist-pkits/crls/inhibitPolicyMapping5subCACRL.crl",
4049    "third_party/nist-pkits/crls/inhibitPolicyMapping5subsubCACRL.crl",
4050    "third_party/nist-pkits/crls/inhibitPolicyMapping5subsubsubCACRL.crl",
4051    "third_party/nist-pkits/crls/keyUsageCriticalcRLSignFalseCACRL.crl",
4052    "third_party/nist-pkits/crls/keyUsageCriticalkeyCertSignFalseCACRL.crl",
4053    "third_party/nist-pkits/crls/keyUsageNotCriticalCACRL.crl",
4054    "third_party/nist-pkits/crls/keyUsageNotCriticalcRLSignFalseCACRL.crl",
4055    "third_party/nist-pkits/crls/keyUsageNotCriticalkeyCertSignFalseCACRL.crl",
4056    "third_party/nist-pkits/crls/nameConstraintsDN1CACRL.crl",
4057    "third_party/nist-pkits/crls/nameConstraintsDN1subCA1CRL.crl",
4058    "third_party/nist-pkits/crls/nameConstraintsDN1subCA2CRL.crl",
4059    "third_party/nist-pkits/crls/nameConstraintsDN1subCA3CRL.crl",
4060    "third_party/nist-pkits/crls/nameConstraintsDN2CACRL.crl",
4061    "third_party/nist-pkits/crls/nameConstraintsDN3CACRL.crl",
4062    "third_party/nist-pkits/crls/nameConstraintsDN3subCA1CRL.crl",
4063    "third_party/nist-pkits/crls/nameConstraintsDN3subCA2CRL.crl",
4064    "third_party/nist-pkits/crls/nameConstraintsDN4CACRL.crl",
4065    "third_party/nist-pkits/crls/nameConstraintsDN5CACRL.crl",
4066    "third_party/nist-pkits/crls/nameConstraintsDNS1CACRL.crl",
4067    "third_party/nist-pkits/crls/nameConstraintsDNS2CACRL.crl",
4068    "third_party/nist-pkits/crls/nameConstraintsRFC822CA1CRL.crl",
4069    "third_party/nist-pkits/crls/nameConstraintsRFC822CA2CRL.crl",
4070    "third_party/nist-pkits/crls/nameConstraintsRFC822CA3CRL.crl",
4071    "third_party/nist-pkits/crls/nameConstraintsURI1CACRL.crl",
4072    "third_party/nist-pkits/crls/nameConstraintsURI2CACRL.crl",
4073    "third_party/nist-pkits/crls/onlyContainsAttributeCertsCACRL.crl",
4074    "third_party/nist-pkits/crls/onlyContainsCACertsCACRL.crl",
4075    "third_party/nist-pkits/crls/onlyContainsUserCertsCACRL.crl",
4076    "third_party/nist-pkits/crls/onlySomeReasonsCA1compromiseCRL.crl",
4077    "third_party/nist-pkits/crls/onlySomeReasonsCA1otherreasonsCRL.crl",
4078    "third_party/nist-pkits/crls/onlySomeReasonsCA2CRL1.crl",
4079    "third_party/nist-pkits/crls/onlySomeReasonsCA2CRL2.crl",
4080    "third_party/nist-pkits/crls/onlySomeReasonsCA3compromiseCRL.crl",
4081    "third_party/nist-pkits/crls/onlySomeReasonsCA3otherreasonsCRL.crl",
4082    "third_party/nist-pkits/crls/onlySomeReasonsCA4compromiseCRL.crl",
4083    "third_party/nist-pkits/crls/onlySomeReasonsCA4otherreasonsCRL.crl",
4084    "third_party/nist-pkits/crls/pathLenConstraint0CACRL.crl",
4085    "third_party/nist-pkits/crls/pathLenConstraint0subCA2CRL.crl",
4086    "third_party/nist-pkits/crls/pathLenConstraint0subCACRL.crl",
4087    "third_party/nist-pkits/crls/pathLenConstraint1CACRL.crl",
4088    "third_party/nist-pkits/crls/pathLenConstraint1subCACRL.crl",
4089    "third_party/nist-pkits/crls/pathLenConstraint6CACRL.crl",
4090    "third_party/nist-pkits/crls/pathLenConstraint6subCA0CRL.crl",
4091    "third_party/nist-pkits/crls/pathLenConstraint6subCA1CRL.crl",
4092    "third_party/nist-pkits/crls/pathLenConstraint6subCA4CRL.crl",
4093    "third_party/nist-pkits/crls/pathLenConstraint6subsubCA00CRL.crl",
4094    "third_party/nist-pkits/crls/pathLenConstraint6subsubCA11CRL.crl",
4095    "third_party/nist-pkits/crls/pathLenConstraint6subsubCA41CRL.crl",
4096    "third_party/nist-pkits/crls/pathLenConstraint6subsubsubCA11XCRL.crl",
4097    "third_party/nist-pkits/crls/pathLenConstraint6subsubsubCA41XCRL.crl",
4098    "third_party/nist-pkits/crls/pre2000CRLnextUpdateCACRL.crl",
4099    "third_party/nist-pkits/crls/requireExplicitPolicy0CACRL.crl",
4100    "third_party/nist-pkits/crls/requireExplicitPolicy0subCACRL.crl",
4101    "third_party/nist-pkits/crls/requireExplicitPolicy0subsubCACRL.crl",
4102    "third_party/nist-pkits/crls/requireExplicitPolicy0subsubsubCACRL.crl",
4103    "third_party/nist-pkits/crls/requireExplicitPolicy10CACRL.crl",
4104    "third_party/nist-pkits/crls/requireExplicitPolicy10subCACRL.crl",
4105    "third_party/nist-pkits/crls/requireExplicitPolicy10subsubCACRL.crl",
4106    "third_party/nist-pkits/crls/requireExplicitPolicy10subsubsubCACRL.crl",
4107    "third_party/nist-pkits/crls/requireExplicitPolicy2CACRL.crl",
4108    "third_party/nist-pkits/crls/requireExplicitPolicy2subCACRL.crl",
4109    "third_party/nist-pkits/crls/requireExplicitPolicy4CACRL.crl",
4110    "third_party/nist-pkits/crls/requireExplicitPolicy4subCACRL.crl",
4111    "third_party/nist-pkits/crls/requireExplicitPolicy4subsubCACRL.crl",
4112    "third_party/nist-pkits/crls/requireExplicitPolicy4subsubsubCACRL.crl",
4113    "third_party/nist-pkits/crls/requireExplicitPolicy5CACRL.crl",
4114    "third_party/nist-pkits/crls/requireExplicitPolicy5subCACRL.crl",
4115    "third_party/nist-pkits/crls/requireExplicitPolicy5subsubCACRL.crl",
4116    "third_party/nist-pkits/crls/requireExplicitPolicy5subsubsubCACRL.crl",
4117    "third_party/nist-pkits/crls/requireExplicitPolicy7CACRL.crl",
4118    "third_party/nist-pkits/crls/requireExplicitPolicy7subCARE2CRL.crl",
4119    "third_party/nist-pkits/crls/requireExplicitPolicy7subsubCARE2RE4CRL.crl",
4120    "third_party/nist-pkits/crls/requireExplicitPolicy7subsubsubCARE2RE4CRL.crl",
4121  ]
4122  outputs = [ "{{bundle_resources_dir}}/" +
4123              "{{source_root_relative_dir}}/{{source_file_part}}" ]
4124}
4125
4126test("net_unittests") {
4127  sources = [
4128    "base/address_family_unittest.cc",
4129    "base/address_list_unittest.cc",
4130    "base/backoff_entry_serializer_unittest.cc",
4131    "base/backoff_entry_unittest.cc",
4132    "base/chunked_upload_data_stream_unittest.cc",
4133    "base/data_url_unittest.cc",
4134    "base/datagram_buffer_unittest.cc",
4135    "base/elements_upload_data_stream_unittest.cc",
4136    "base/escape_unittest.cc",
4137    "base/expiring_cache_unittest.cc",
4138    "base/file_stream_unittest.cc",
4139    "base/filename_util_unittest.cc",
4140    "base/hex_utils_test.cc",
4141    "base/host_mapping_rules_unittest.cc",
4142    "base/host_port_pair_unittest.cc",
4143    "base/interval_set_test.cc",
4144    "base/interval_test.cc",
4145    "base/ip_address_unittest.cc",
4146    "base/ip_endpoint_unittest.cc",
4147    "base/ip_pattern_unittest.cc",
4148    "base/isolation_info_unittest.cc",
4149    "base/lookup_string_in_fixed_set_unittest.cc",
4150    "base/mime_sniffer_unittest.cc",
4151    "base/mime_util_unittest.cc",
4152    "base/net_errors_unittest.cc",
4153    "base/net_string_util_unittest.cc",
4154    "base/network_activity_monitor_unittest.cc",
4155    "base/network_change_notifier_unittest.cc",
4156    "base/network_interfaces_unittest.cc",
4157    "base/network_isolation_key_unittest.cc",
4158    "base/parse_number_unittest.cc",
4159    "base/port_util_unittest.cc",
4160    "base/prioritized_dispatcher_unittest.cc",
4161    "base/prioritized_task_runner_unittest.cc",
4162    "base/priority_queue_unittest.cc",
4163    "base/registry_controlled_domains/registry_controlled_domain_unittest.cc",
4164    "base/scheme_host_port_matcher_rule_unittest.cc",
4165    "base/scheme_host_port_matcher_unittest.cc",
4166    "base/test_completion_callback_unittest.cc",
4167    "base/test_proxy_delegate.cc",
4168    "base/test_proxy_delegate.h",
4169    "base/upload_bytes_element_reader_unittest.cc",
4170    "base/upload_file_element_reader_unittest.cc",
4171    "base/url_util_unittest.cc",
4172    "cert/caching_cert_verifier_unittest.cc",
4173    "cert/cert_verifier_unittest.cc",
4174    "cert/cert_verify_proc_builtin_unittest.cc",
4175    "cert/cert_verify_proc_unittest.cc",
4176    "cert/coalescing_cert_verifier_unittest.cc",
4177    "cert/crl_set_unittest.cc",
4178    "cert/ct_log_response_parser_unittest.cc",
4179    "cert/ct_log_verifier_unittest.cc",
4180    "cert/ct_objects_extractor_unittest.cc",
4181    "cert/ct_serialization_unittest.cc",
4182    "cert/ev_root_ca_metadata_unittest.cc",
4183    "cert/internal/cert_issuer_source_aia_unittest.cc",
4184    "cert/internal/cert_issuer_source_static_unittest.cc",
4185    "cert/internal/cert_issuer_source_sync_unittest.h",
4186    "cert/internal/certificate_policies_unittest.cc",
4187    "cert/internal/crl_unittest.cc",
4188    "cert/internal/extended_key_usage_unittest.cc",
4189    "cert/internal/general_names_unittest.cc",
4190    "cert/internal/name_constraints_unittest.cc",
4191    "cert/internal/nist_pkits_unittest.cc",
4192    "cert/internal/nist_pkits_unittest.h",
4193    "cert/internal/ocsp_unittest.cc",
4194    "cert/internal/parse_certificate_unittest.cc",
4195    "cert/internal/parse_name_unittest.cc",
4196    "cert/internal/parsed_certificate_unittest.cc",
4197    "cert/internal/path_builder_pkits_unittest.cc",
4198    "cert/internal/path_builder_unittest.cc",
4199    "cert/internal/path_builder_verify_certificate_chain_unittest.cc",
4200    "cert/internal/revocation_checker_unittest.cc",
4201    "cert/internal/revocation_util_unittest.cc",
4202    "cert/internal/signature_algorithm_unittest.cc",
4203    "cert/internal/simple_path_builder_delegate_unittest.cc",
4204    "cert/internal/test_helpers.cc",
4205    "cert/internal/test_helpers.h",
4206    "cert/internal/trust_store_collection_unittest.cc",
4207    "cert/internal/verify_certificate_chain_pkits_unittest.cc",
4208    "cert/internal/verify_certificate_chain_typed_unittest.h",
4209    "cert/internal/verify_certificate_chain_unittest.cc",
4210    "cert/internal/verify_name_match_unittest.cc",
4211    "cert/internal/verify_signed_data_unittest.cc",
4212    "cert/jwk_serializer_unittest.cc",
4213    "cert/known_roots_unittest.cc",
4214    "cert/merkle_audit_proof_unittest.cc",
4215    "cert/merkle_tree_leaf_unittest.cc",
4216    "cert/multi_log_ct_verifier_unittest.cc",
4217    "cert/multi_threaded_cert_verifier_unittest.cc",
4218    "cert/pem_unittest.cc",
4219    "cert/signed_certificate_timestamp_unittest.cc",
4220    "cert/symantec_certs_unittest.cc",
4221    "cert/test_root_certs_unittest.cc",
4222    "cert/x509_cert_types_unittest.cc",
4223    "cert/x509_certificate_unittest.cc",
4224    "cert/x509_util_unittest.cc",
4225    "cert_net/cert_net_fetcher_url_request_unittest.cc",
4226    "cookies/canonical_cookie_unittest.cc",
4227    "cookies/cookie_constants_unittest.cc",
4228    "cookies/cookie_deletion_info_unittest.cc",
4229    "cookies/cookie_monster_unittest.cc",
4230    "cookies/cookie_util_unittest.cc",
4231    "cookies/parsed_cookie_unittest.cc",
4232    "cookies/site_for_cookies_unittest.cc",
4233    "cookies/static_cookie_policy_unittest.cc",
4234    "der/encode_values_unittest.cc",
4235    "der/input_unittest.cc",
4236    "der/parse_values_unittest.cc",
4237    "der/parser_unittest.cc",
4238    "disk_cache/backend_cleanup_tracker_unittest.cc",
4239    "disk_cache/backend_unittest.cc",
4240    "disk_cache/blockfile/addr_unittest.cc",
4241    "disk_cache/blockfile/bitmap_unittest.cc",
4242    "disk_cache/blockfile/block_files_unittest.cc",
4243    "disk_cache/blockfile/mapped_file_unittest.cc",
4244    "disk_cache/blockfile/stats_unittest.cc",
4245    "disk_cache/blockfile/storage_block_unittest.cc",
4246    "disk_cache/cache_util_unittest.cc",
4247    "disk_cache/entry_unittest.cc",
4248    "disk_cache/simple/simple_file_tracker_unittest.cc",
4249    "disk_cache/simple/simple_index_file_unittest.cc",
4250    "disk_cache/simple/simple_index_unittest.cc",
4251    "disk_cache/simple/simple_test_util.cc",
4252    "disk_cache/simple/simple_test_util.h",
4253    "disk_cache/simple/simple_util_unittest.cc",
4254    "disk_cache/simple/simple_version_upgrade_unittest.cc",
4255    "extras/sqlite/sqlite_persistent_cookie_store_unittest.cc",
4256    "filter/filter_source_stream_unittest.cc",
4257    "filter/gzip_source_stream_unittest.cc",
4258    "http/alternative_service_unittest.cc",
4259    "http/bidirectional_stream_unittest.cc",
4260    "http/broken_alternative_services_unittest.cc",
4261    "http/http_auth_cache_unittest.cc",
4262    "http/http_auth_challenge_tokenizer_unittest.cc",
4263    "http/http_auth_controller_unittest.cc",
4264    "http/http_auth_filter_unittest.cc",
4265    "http/http_auth_handler_basic_unittest.cc",
4266    "http/http_auth_handler_digest_unittest.cc",
4267    "http/http_auth_handler_factory_unittest.cc",
4268    "http/http_auth_handler_mock.cc",
4269    "http/http_auth_handler_mock.h",
4270    "http/http_auth_handler_unittest.cc",
4271    "http/http_auth_multi_round_parse_unittest.cc",
4272    "http/http_auth_preferences_unittest.cc",
4273    "http/http_auth_unittest.cc",
4274    "http/http_basic_state_unittest.cc",
4275    "http/http_byte_range_unittest.cc",
4276    "http/http_cache_lookup_manager_unittest.cc",
4277    "http/http_cache_unittest.cc",
4278    "http/http_cache_writers_unittest.cc",
4279    "http/http_chunked_decoder_unittest.cc",
4280    "http/http_content_disposition_unittest.cc",
4281    "http/http_log_util_unittest.cc",
4282    "http/http_network_layer_unittest.cc",
4283    "http/http_network_transaction_unittest.cc",
4284    "http/http_proxy_client_socket_unittest.cc",
4285    "http/http_proxy_connect_job_unittest.cc",
4286    "http/http_request_headers_unittest.cc",
4287    "http/http_response_body_drainer_unittest.cc",
4288    "http/http_response_headers_unittest.cc",
4289    "http/http_response_info_unittest.cc",
4290    "http/http_security_headers_unittest.cc",
4291    "http/http_server_properties_manager_unittest.cc",
4292    "http/http_server_properties_unittest.cc",
4293    "http/http_status_code_unittest.cc",
4294    "http/http_stream_factory_job_controller_unittest.cc",
4295    "http/http_stream_factory_unittest.cc",
4296    "http/http_stream_parser_unittest.cc",
4297    "http/http_stream_request_unittest.cc",
4298    "http/http_util_unittest.cc",
4299    "http/http_vary_data_unittest.cc",
4300    "http/mock_allow_http_auth_preferences.cc",
4301    "http/mock_allow_http_auth_preferences.h",
4302    "http/structured_headers_unittest.cc",
4303    "http/transport_security_persister_unittest.cc",
4304    "http/transport_security_state_unittest.cc",
4305    "http/url_security_manager_unittest.cc",
4306    "http/webfonts_histogram_unittest.cc",
4307    "http2/platform/impl/http2_test_helpers_impl.cc",
4308    "http2/platform/impl/http2_test_helpers_impl.h",
4309    "log/file_net_log_observer_unittest.cc",
4310    "log/net_log_capture_mode_unittest.cc",
4311    "log/net_log_unittest.cc",
4312    "log/net_log_util_unittest.cc",
4313    "log/net_log_values_unittest.cc",
4314    "log/trace_net_log_observer_unittest.cc",
4315    "nqe/effective_connection_type_unittest.cc",
4316    "nqe/event_creator_unittest.cc",
4317    "nqe/network_congestion_analyzer_unittest.cc",
4318    "nqe/network_id_unittest.cc",
4319    "nqe/network_qualities_prefs_manager_unittest.cc",
4320    "nqe/network_quality_estimator_params_unittest.cc",
4321    "nqe/network_quality_estimator_unittest.cc",
4322    "nqe/network_quality_estimator_util_unittest.cc",
4323    "nqe/network_quality_store_unittest.cc",
4324    "nqe/observation_buffer_unittest.cc",
4325    "nqe/socket_watcher_unittest.cc",
4326    "nqe/throughput_analyzer_unittest.cc",
4327    "proxy_resolution/configured_proxy_resolution_service_unittest.cc",
4328    "proxy_resolution/multi_threaded_proxy_resolver_unittest.cc",
4329    "proxy_resolution/network_delegate_error_observer_unittest.cc",
4330    "proxy_resolution/pac_file_decider_unittest.cc",
4331    "proxy_resolution/pac_file_fetcher_impl_unittest.cc",
4332    "proxy_resolution/proxy_bypass_rules_unittest.cc",
4333    "proxy_resolution/proxy_config_unittest.cc",
4334    "proxy_resolution/proxy_info_unittest.cc",
4335    "proxy_resolution/proxy_list_unittest.cc",
4336    "proxy_resolution/proxy_server_unittest.cc",
4337    "quic/bidirectional_stream_quic_impl_unittest.cc",
4338    "quic/crypto/proof_test_chromium.cc",
4339    "quic/crypto/proof_verifier_chromium_test.cc",
4340    "quic/mock_quic_data.cc",
4341    "quic/mock_quic_data.h",
4342    "quic/network_connection_unittest.cc",
4343    "quic/platform/impl/quic_chromium_clock_test.cc",
4344    "quic/platform/impl/quic_uint128_impl_unittest.cc",
4345    "quic/properties_based_quic_server_info_test.cc",
4346    "quic/quic_address_mismatch_test.cc",
4347    "quic/quic_chromium_alarm_factory_test.cc",
4348    "quic/quic_chromium_client_session_peer.cc",
4349    "quic/quic_chromium_client_session_peer.h",
4350    "quic/quic_chromium_client_session_test.cc",
4351    "quic/quic_chromium_client_stream_test.cc",
4352    "quic/quic_chromium_connection_helper_test.cc",
4353    "quic/quic_client_session_cache_unittests.cc",
4354    "quic/quic_clock_skew_detector_test.cc",
4355    "quic/quic_connectivity_probing_manager_test.cc",
4356    "quic/quic_end_to_end_unittest.cc",
4357    "quic/quic_http_stream_test.cc",
4358    "quic/quic_http_utils_test.cc",
4359    "quic/quic_network_transaction_unittest.cc",
4360    "quic/quic_proxy_client_socket_unittest.cc",
4361    "quic/quic_stream_factory_peer.cc",
4362    "quic/quic_stream_factory_peer.h",
4363    "quic/quic_stream_factory_test.cc",
4364    "quic/quic_test_packet_maker.cc",
4365    "quic/quic_test_packet_maker.h",
4366    "quic/quic_transport_end_to_end_test.cc",
4367    "quic/quic_utils_chromium_test.cc",
4368    "quic/test_quic_crypto_client_config_handle.cc",
4369    "quic/test_quic_crypto_client_config_handle.h",
4370    "socket/client_socket_pool_base_unittest.cc",
4371    "socket/client_socket_pool_unittest.cc",
4372    "socket/connect_job_test_util.cc",
4373    "socket/connect_job_test_util.h",
4374    "socket/connect_job_unittest.cc",
4375    "socket/mock_client_socket_pool_manager.cc",
4376    "socket/mock_client_socket_pool_manager.h",
4377    "socket/sequenced_socket_data_unittest.cc",
4378    "socket/socket_bio_adapter_unittest.cc",
4379    "socket/socket_tag_unittest.cc",
4380    "socket/socks5_client_socket_unittest.cc",
4381    "socket/socks_client_socket_unittest.cc",
4382    "socket/socks_connect_job_unittest.cc",
4383    "socket/ssl_client_socket_unittest.cc",
4384    "socket/ssl_connect_job_unittest.cc",
4385    "socket/ssl_server_socket_unittest.cc",
4386    "socket/tcp_client_socket_unittest.cc",
4387    "socket/tcp_server_socket_unittest.cc",
4388    "socket/tcp_socket_unittest.cc",
4389    "socket/transport_client_socket_pool_test_util.cc",
4390    "socket/transport_client_socket_pool_test_util.h",
4391    "socket/transport_client_socket_pool_unittest.cc",
4392    "socket/transport_client_socket_unittest.cc",
4393    "socket/transport_connect_job_unittest.cc",
4394    "socket/udp_socket_unittest.cc",
4395    "socket/websocket_endpoint_lock_manager_unittest.cc",
4396    "socket/websocket_transport_client_socket_pool_unittest.cc",
4397    "spdy/bidirectional_stream_spdy_impl_unittest.cc",
4398    "spdy/buffered_spdy_framer_unittest.cc",
4399    "spdy/fuzzing/hpack_fuzz_util_test.cc",
4400    "spdy/header_coalescer_test.cc",
4401    "spdy/http2_priority_dependencies_unittest.cc",
4402    "spdy/http2_push_promise_index_test.cc",
4403    "spdy/platform/impl/spdy_test_helpers_impl.h",
4404    "spdy/spdy_buffer_unittest.cc",
4405    "spdy/spdy_http_stream_unittest.cc",
4406    "spdy/spdy_http_utils_unittest.cc",
4407    "spdy/spdy_log_util_unittest.cc",
4408    "spdy/spdy_network_transaction_unittest.cc",
4409    "spdy/spdy_proxy_client_socket_unittest.cc",
4410    "spdy/spdy_read_queue_unittest.cc",
4411    "spdy/spdy_session_pool_unittest.cc",
4412    "spdy/spdy_session_test_util.cc",
4413    "spdy/spdy_session_test_util.h",
4414    "spdy/spdy_session_unittest.cc",
4415    "spdy/spdy_stream_test_util.cc",
4416    "spdy/spdy_stream_test_util.h",
4417    "spdy/spdy_stream_unittest.cc",
4418    "spdy/spdy_write_queue_unittest.cc",
4419    "ssl/client_cert_identity_unittest.cc",
4420    "ssl/client_cert_store_unittest-inl.h",
4421    "ssl/ssl_cipher_suite_names_unittest.cc",
4422    "ssl/ssl_client_auth_cache_unittest.cc",
4423    "ssl/ssl_client_session_cache_unittest.cc",
4424    "ssl/ssl_config_service_unittest.cc",
4425    "ssl/ssl_config_unittest.cc",
4426    "ssl/ssl_connection_status_flags_unittest.cc",
4427    "ssl/ssl_platform_key_util_unittest.cc",
4428    "test/embedded_test_server/embedded_test_server_unittest.cc",
4429    "test/embedded_test_server/http_request_unittest.cc",
4430    "test/embedded_test_server/http_response_unittest.cc",
4431    "test/run_all_unittests.cc",
4432    "test/tcp_socket_proxy_unittest.cc",
4433    "third_party/nist-pkits/pkits_testcases-inl.h",
4434    "third_party/uri_template/uri_template_test.cc",
4435    "tools/content_decoder_tool/content_decoder_tool.cc",
4436    "tools/content_decoder_tool/content_decoder_tool.h",
4437    "tools/content_decoder_tool/content_decoder_tool_unittest.cc",
4438    "tools/quic/quic_simple_client_test.cc",
4439    "tools/tld_cleanup/tld_cleanup_util_unittest.cc",
4440    "url_request/redirect_info_unittest.cc",
4441    "url_request/redirect_util_unittest.cc",
4442    "url_request/report_sender_unittest.cc",
4443    "url_request/url_fetcher_impl_unittest.cc",
4444    "url_request/url_fetcher_response_writer_unittest.cc",
4445    "url_request/url_request_context_builder_unittest.cc",
4446    "url_request/url_request_context_unittest.cc",
4447    "url_request/url_request_filter_unittest.cc",
4448    "url_request/url_request_http_job_unittest.cc",
4449    "url_request/url_request_job_factory_impl_unittest.cc",
4450    "url_request/url_request_job_unittest.cc",
4451    "url_request/url_request_quic_unittest.cc",
4452    "url_request/url_request_throttler_simulation_unittest.cc",
4453    "url_request/url_request_throttler_test_support.cc",
4454    "url_request/url_request_throttler_test_support.h",
4455    "url_request/url_request_throttler_unittest.cc",
4456    "url_request/url_request_unittest.cc",
4457    "url_request/view_cache_helper_unittest.cc",
4458  ]
4459
4460  if (is_android) {
4461    sources += [
4462      "android/cellular_signal_strength_unittest.cc",
4463      "android/dummy_spnego_authenticator.cc",
4464      "android/dummy_spnego_authenticator.h",
4465      "android/http_auth_negotiate_android_unittest.cc",
4466      "android/network_change_notifier_android_unittest.cc",
4467      "android/network_library_unittest.cc",
4468      "android/traffic_stats_unittest.cc",
4469      "cert/cert_verify_proc_android_unittest.cc",
4470      "proxy_resolution/proxy_config_service_android_unittest.cc",
4471      "ssl/ssl_platform_key_android_unittest.cc",
4472    ]
4473  }
4474
4475  if (is_chromeos && use_nss_certs) {
4476    sources += [
4477      "cert/nss_cert_database_chromeos_unittest.cc",
4478      "cert/nss_profile_filter_chromeos_unittest.cc",
4479    ]
4480  }
4481
4482  if (is_linux) {
4483    sources += [
4484      "base/address_tracker_linux_unittest.cc",
4485      "base/network_interfaces_linux_unittest.cc",
4486    ]
4487    if (!is_chromeos) {
4488      sources += [ "proxy_resolution/proxy_config_service_linux_unittest.cc" ]
4489    }
4490  }
4491
4492  if (is_mac) {
4493    sources += [
4494      "cert/cert_verify_proc_mac_unittest.cc",
4495      "cert/internal/trust_store_mac_unittest.cc",
4496      "cert/x509_util_ios_and_mac_unittest.cc",
4497      "ssl/client_cert_store_mac_unittest.cc",
4498      "ssl/ssl_platform_key_mac_unittest.cc",
4499    ]
4500  }
4501
4502  if (is_win) {
4503    sources += [
4504      "base/network_change_notifier_win_unittest.cc",
4505      "base/network_interfaces_win_unittest.cc",
4506      "http/http_auth_sspi_win_unittest.cc",
4507      "http/mock_sspi_library_win.cc",
4508      "http/mock_sspi_library_win.h",
4509      "proxy_resolution/dhcp_pac_file_adapter_fetcher_win_unittest.cc",
4510      "proxy_resolution/dhcp_pac_file_fetcher_win_unittest.cc",
4511      "proxy_resolution/proxy_config_service_win_unittest.cc",
4512      "proxy_resolution/win/windows_system_proxy_resolution_service_unittest.cc",
4513      "ssl/client_cert_store_win_unittest.cc",
4514      "ssl/ssl_platform_key_win_unittest.cc",
4515    ]
4516  }
4517
4518  configs += [ "//build/config:precompiled_headers" ]
4519  defines = []
4520
4521  deps = [
4522    ":extras",
4523    ":net",
4524    ":preload_decoder",
4525    ":quic_test_tools",
4526    ":quiche_test_tools",
4527    ":simple_quic_tools",
4528    ":spdy_test_tools",
4529    ":test_support",
4530    "//base",
4531    "//base:i18n",
4532    "//base/third_party/dynamic_annotations",
4533    "//components/sqlite_proto",
4534    "//crypto",
4535    "//crypto:platform",
4536    "//crypto:test_support",
4537    "//net/base/registry_controlled_domains",
4538    "//net/base/registry_controlled_domains:lookup_strings_test_sets",
4539    "//net/dns:tests",
4540    "//net/dns/public:tests",
4541    "//net/http:transport_security_state_unittest_data",
4542    "//net/http:transport_security_state_unittest_data_default",
4543    "//net/third_party/quiche:quiche_tests",
4544    "//net/tools/huffman_trie:huffman_trie_generator_sources",
4545    "//sql",
4546    "//testing/gmock",
4547    "//testing/gtest",
4548    "//third_party/protobuf:protobuf_lite",
4549    "//third_party/zlib",
4550    "//url",
4551    "//url:buildflags",
4552  ]
4553
4554  allow_circular_includes_from = [ "//net/third_party/quiche:quiche_tests" ]
4555
4556  if (enable_websockets) {
4557    deps += [ "//net/server:tests" ]
4558  }
4559
4560  if (is_posix || is_fuchsia) {
4561    sources += [ "socket/udp_socket_posix_unittest.cc" ]
4562  }
4563
4564  if (is_android || is_chromeos) {
4565    sources += [ "base/network_change_notifier_posix_unittest.cc" ]
4566  }
4567
4568  if (enable_reporting) {
4569    sources += [
4570      "extras/sqlite/sqlite_persistent_reporting_and_nel_store_unittest.cc",
4571      "network_error_logging/mock_persistent_nel_store_unittest.cc",
4572      "network_error_logging/network_error_logging_service_unittest.cc",
4573      "reporting/mock_persistent_reporting_store_unittest.cc",
4574      "reporting/reporting_browsing_data_remover_unittest.cc",
4575      "reporting/reporting_cache_unittest.cc",
4576      "reporting/reporting_delivery_agent_unittest.cc",
4577      "reporting/reporting_endpoint_manager_unittest.cc",
4578      "reporting/reporting_garbage_collector_unittest.cc",
4579      "reporting/reporting_header_parser_unittest.cc",
4580      "reporting/reporting_network_change_observer_unittest.cc",
4581      "reporting/reporting_service_unittest.cc",
4582      "reporting/reporting_uploader_unittest.cc",
4583    ]
4584  }
4585
4586  data = []
4587  data_deps = [
4588    "third_party/nist-pkits/",
4589    "//testing/buildbot/filters:net_unittests_filters",
4590  ]
4591
4592  if (is_linux || is_mac || is_win || is_fuchsia) {
4593    deps += [
4594      "//third_party/pywebsocket3/",
4595      "//third_party/tlslite/",
4596    ]
4597    data_deps += [
4598      "//third_party/pywebsocket3/",
4599      "//third_party/tlslite/",
4600    ]
4601    data += [
4602      "tools/testserver/",
4603      "//third_party/pywebsocket3/src/mod_pywebsocket/",
4604      "//third_party/tlslite/",
4605    ]
4606  }
4607
4608  if (is_linux) {
4609    sources += [
4610      "quic/platform/impl/quic_epoll_clock_test.cc",
4611      "quic/platform/impl/quic_flags_test.cc",
4612      "quic/platform/impl/quic_linux_socket_utils_test.cc",
4613      "quic/platform/impl/quic_socket_utils_test.cc",
4614      "tools/quic/quic_http_proxy_backend_stream_test.cc",
4615      "tools/quic/quic_http_proxy_backend_test.cc",
4616      "tools/quic/quic_simple_server_test.cc",
4617    ]
4618  }
4619
4620  if (is_mac || is_ios) {
4621    sources += [ "base/mac/url_conversions_unittest.mm" ]
4622  }
4623
4624  if (is_mac) {
4625    libs = [ "Security.framework" ]
4626  }
4627
4628  if (!is_win) {
4629    sources += [
4630      "http/http_auth_handler_ntlm_portable_unittest.cc",
4631      "ntlm/ntlm_buffer_reader_unittest.cc",
4632      "ntlm/ntlm_buffer_writer_unittest.cc",
4633      "ntlm/ntlm_client_unittest.cc",
4634      "ntlm/ntlm_test_data.h",
4635      "ntlm/ntlm_unittest.cc",
4636    ]
4637  }
4638
4639  if (enable_python_utils) {
4640    sources += [ "test/python_utils_unittest.cc" ]
4641  }
4642
4643  if (is_fuchsia) {
4644    use_test_server = true
4645    deps += [
4646      "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.netstack",
4647      "//third_party/fuchsia-sdk/sdk/pkg/fidl_cpp",
4648    ]
4649    sources += [ "base/network_change_notifier_fuchsia_unittest.cc" ]
4650  }
4651
4652  if (use_nss_certs) {
4653    sources += [
4654      "cert/internal/system_trust_store_nss_unittest.cc",
4655      "cert/internal/trust_store_nss_unittest.cc",
4656      "cert/nss_cert_database_unittest.cc",
4657      "cert/x509_util_nss_unittest.cc",
4658      "cert_net/nss_ocsp_unittest.cc",
4659    ]
4660    if (!is_chromecast) {
4661      sources += [
4662        "ssl/client_cert_store_nss_unittest.cc",
4663        "ssl/ssl_platform_key_nss_unittest.cc",
4664      ]
4665    }
4666  }
4667
4668  if (use_external_gssapi) {
4669    sources += [
4670      "http/http_auth_gssapi_posix_unittest.cc",
4671      "http/mock_gssapi_library_posix.cc",
4672      "http/mock_gssapi_library_posix.h",
4673    ]
4674    data_deps += [
4675      ":test_badgssapi",
4676      ":test_gssapi",
4677    ]
4678  }
4679
4680  if (use_kerberos) {
4681    sources += [ "http/http_auth_handler_negotiate_unittest.cc" ]
4682  }
4683
4684  if (enable_websockets) {
4685    sources += [
4686      "websockets/websocket_basic_handshake_stream_test.cc",
4687      "websockets/websocket_basic_stream_adapters_test.cc",
4688      "websockets/websocket_basic_stream_test.cc",
4689      "websockets/websocket_channel_test.cc",
4690      "websockets/websocket_deflate_parameters_test.cc",
4691      "websockets/websocket_deflate_predictor_impl_test.cc",
4692      "websockets/websocket_deflate_stream_test.cc",
4693      "websockets/websocket_deflater_test.cc",
4694      "websockets/websocket_end_to_end_test.cc",
4695      "websockets/websocket_errors_test.cc",
4696      "websockets/websocket_extension_parser_test.cc",
4697      "websockets/websocket_extension_test.cc",
4698      "websockets/websocket_frame_parser_test.cc",
4699      "websockets/websocket_frame_test.cc",
4700      "websockets/websocket_handshake_challenge_test.cc",
4701      "websockets/websocket_handshake_stream_create_helper_test.cc",
4702      "websockets/websocket_inflater_test.cc",
4703      "websockets/websocket_stream_cookie_test.cc",
4704      "websockets/websocket_stream_create_test_base.cc",
4705      "websockets/websocket_stream_create_test_base.h",
4706      "websockets/websocket_stream_test.cc",
4707      "websockets/websocket_test_util.cc",
4708      "websockets/websocket_test_util.h",
4709    ]
4710  }
4711
4712  if (!disable_file_support) {
4713    sources += [
4714      "base/directory_lister_unittest.cc",
4715      "base/directory_listing_unittest.cc",
4716      "test/url_request/url_request_test_job_backed_by_file_unittest.cc",
4717    ]
4718  }
4719
4720  if (!disable_ftp_support) {
4721    sources += [
4722      "ftp/ftp_auth_cache_unittest.cc",
4723      "ftp/ftp_ctrl_response_buffer_unittest.cc",
4724      "ftp/ftp_directory_listing_parser_ls_unittest.cc",
4725      "ftp/ftp_directory_listing_parser_unittest.cc",
4726      "ftp/ftp_directory_listing_parser_unittest.h",
4727      "ftp/ftp_directory_listing_parser_vms_unittest.cc",
4728      "ftp/ftp_directory_listing_parser_windows_unittest.cc",
4729      "ftp/ftp_network_transaction_unittest.cc",
4730      "ftp/ftp_util_unittest.cc",
4731      "url_request/url_request_ftp_job_unittest.cc",
4732    ]
4733  }
4734
4735  if (enable_built_in_dns) {
4736    sources += [ "url_request/http_with_dns_over_https_unittest.cc" ]
4737  }
4738
4739  if (is_ios) {
4740    sources -= [
4741      # TODO(droger): The following tests are disabled because the
4742      # implementation is missing or incomplete.
4743      "disk_cache/backend_unittest.cc",
4744      "disk_cache/blockfile/block_files_unittest.cc",
4745
4746      # Need to read input data files.
4747      "socket/ssl_server_socket_unittest.cc",
4748      "spdy/fuzzing/hpack_fuzz_util_test.cc",
4749
4750      # Need TestServer.
4751      "cert_net/cert_net_fetcher_url_request_unittest.cc",
4752      "proxy_resolution/pac_file_fetcher_impl_unittest.cc",
4753      "socket/ssl_client_socket_unittest.cc",
4754      "url_request/url_fetcher_impl_unittest.cc",
4755      "url_request/url_request_context_builder_unittest.cc",
4756    ]
4757    sources += [ "cert/x509_util_ios_and_mac_unittest.cc" ]
4758
4759    bundle_deps = [ ":net_unittests_bundle_data" ]
4760  }
4761
4762  if (enable_unix_sockets) {
4763    sources += [
4764      "socket/unix_domain_client_socket_posix_unittest.cc",
4765      "socket/unix_domain_server_socket_posix_unittest.cc",
4766    ]
4767  }
4768
4769  # Use getifaddrs() on POSIX platforms, except Linux and Android.
4770  if (is_posix && !is_linux && !is_android) {
4771    sources += [ "base/network_interfaces_getifaddrs_unittest.cc" ]
4772  }
4773
4774  # Unit tests that aren't supported by the current ICU alternatives on Android.
4775  if (is_android && use_platform_icu_alternatives) {
4776    sources -= [
4777      "base/filename_util_unittest.cc",
4778      "base/url_util_unittest.cc",
4779      "cert/x509_certificate_unittest.cc",
4780      "url_request/url_request_job_unittest.cc",
4781    ]
4782    deps += [ "//url:url_java" ]
4783  }
4784
4785  # Unit tests that are not supported by the current ICU alternatives on iOS.
4786  if (is_ios && use_platform_icu_alternatives) {
4787    sources -= [
4788      "base/filename_util_unittest.cc",
4789      "base/url_util_unittest.cc",
4790      "cert/x509_certificate_unittest.cc",
4791      "http/http_auth_handler_basic_unittest.cc",
4792      "http/http_auth_handler_digest_unittest.cc",
4793      "http/http_auth_handler_factory_unittest.cc",
4794      "http/http_auth_unittest.cc",
4795      "http/http_content_disposition_unittest.cc",
4796      "http/http_network_transaction_unittest.cc",
4797      "spdy/spdy_network_transaction_unittest.cc",
4798      "spdy/spdy_proxy_client_socket_unittest.cc",
4799      "url_request/url_request_job_unittest.cc",
4800      "url_request/url_request_unittest.cc",
4801    ]
4802  }
4803
4804  if (!disable_brotli_filter) {
4805    sources += [ "filter/brotli_source_stream_unittest.cc" ]
4806  }
4807
4808  if (is_android) {
4809    data_deps += [ "//net/tools/testserver:testserver_py" ]
4810    deps += [
4811      ":net_test_jni_headers",
4812      "//base:base_java_unittest_support",
4813      "//net/android:net_java",
4814      "//net/android:net_java_test_support",
4815      "//net/android:net_java_test_support_provider",
4816      "//net/android:net_javatests",
4817      "//net/android:net_unittests_apk_resources",
4818
4819      # TODO(mmenke):  This depends on test_support_base, which depends on
4820      #                icu.  Figure out a way to remove that dependency.
4821      "//testing/android/native_test:native_test_native_code",
4822    ]
4823    android_manifest = "//net/android/unittest_support/AndroidManifest.xml"
4824    sources += [
4825      "base/address_tracker_linux_unittest.cc",
4826      "base/network_interfaces_linux_unittest.cc",
4827    ]
4828    shard_timeout = 300
4829  }
4830
4831  if (is_win) {
4832    libs = [
4833      "iphlpapi.lib",
4834      "ncrypt.lib",
4835    ]
4836  }
4837
4838  if (trial_comparison_cert_verifier_supported) {
4839    sources += [ "cert/trial_comparison_cert_verifier_unittest.cc" ]
4840  }
4841
4842  # Include transport_security_state_generator tests.
4843  if (host_toolchain == current_toolchain) {
4844    deps += [
4845      "//net/tools/huffman_trie:huffman_trie_generator_test_sources",
4846      "//net/tools/transport_security_state_generator:transport_security_state_generator_test_sources",
4847    ]
4848  }
4849}
4850
4851# !is_android && !is_win && !is_mac
4852if (!is_ios) {
4853  # TODO(crbug.com/594965): this should be converted to "app" template and
4854  # enabled on iOS too.
4855  test("net_perftests") {
4856    sources = [
4857      "base/mime_sniffer_perftest.cc",
4858      "cookies/cookie_monster_perftest.cc",
4859      "disk_cache/disk_cache_perftest.cc",
4860      "extras/sqlite/sqlite_persistent_cookie_store_perftest.cc",
4861      "socket/udp_socket_perftest.cc",
4862      "url_request/url_request_quic_perftest.cc",
4863    ]
4864
4865    deps = [
4866      ":extras",
4867      ":net",
4868      ":quic_test_tools",
4869      ":simple_quic_tools",
4870      ":test_support",
4871      "//base",
4872      "//base:i18n",
4873      "//base/test:test_support_perf",
4874      "//testing/gtest",
4875      "//testing/perf",
4876      "//url",
4877    ]
4878    data_deps = [
4879      # Needed for isolate script to execute.
4880      "//testing:run_perf_test",
4881    ]
4882    if (enable_websockets) {
4883      sources += [ "websockets/websocket_frame_perftest.cc" ]
4884    }
4885    if (is_win) {
4886      deps += [ "//build/win:default_exe_manifest" ]
4887    }
4888  }
4889}
4890
4891# Fuzzers
4892
4893# This has a global (InitGlobals) that must always be linked in, so
4894# must be a source set instead of a static library.
4895if (use_fuzzing_engine) {
4896  # fuzzer_test targets are no-op when |use_fuzzing_engine| is false. Fuzzer
4897  # support targets should be disabled too.
4898  source_set("net_fuzzer_test_support") {
4899    testonly = true
4900
4901    sources = [
4902      "base/fuzzer_test_support.cc",
4903      "filter/fuzzed_source_stream.cc",
4904      "filter/fuzzed_source_stream.h",
4905      "socket/fuzzed_datagram_client_socket.cc",
4906      "socket/fuzzed_datagram_client_socket.h",
4907      "socket/fuzzed_server_socket.cc",
4908      "socket/fuzzed_server_socket.h",
4909      "socket/fuzzed_socket.cc",
4910      "socket/fuzzed_socket.h",
4911      "socket/fuzzed_socket_factory.cc",
4912      "socket/fuzzed_socket_factory.h",
4913      "third_party/quiche/src/quic/platform/api/quic_fuzzed_data_provider.h",
4914    ]
4915    public_deps = [
4916      "//base/test:test_support",
4917      "//net/dns:fuzzer_test_support",
4918    ]
4919    deps = [
4920      "//base",
4921      "//base:i18n",
4922      "//net",
4923    ]
4924    allow_circular_includes_from = [ "//net/dns:fuzzer_test_support" ]
4925  }
4926}
4927
4928proto_library("disk_cache_lpm_fuzzer_proto") {
4929  sources = [ "disk_cache/disk_cache_fuzzer.proto" ]
4930}
4931
4932fuzzer_test("disk_cache_lpm_fuzzer") {
4933  sources = [ "disk_cache/disk_cache_fuzzer.cc" ]
4934  deps = [
4935    ":disk_cache_lpm_fuzzer_proto",
4936    ":test_support",
4937    "//base",
4938    "//net",
4939    "//third_party/libprotobuf-mutator",
4940  ]
4941}
4942
4943fuzzer_test("net_data_url_fuzzer") {
4944  sources = [ "base/data_url_fuzzer.cc" ]
4945  deps = [
4946    ":net_fuzzer_test_support",
4947    ":test_support",
4948    "//base",
4949    "//net",
4950  ]
4951  dict = "data/fuzzer_dictionaries/net_data_url_fuzzer.dict"
4952
4953  # IsTokenChar() and ToLowerASCII() are surprisingly slow in instrumented builds.
4954  libfuzzer_options = [ "max_len=100000" ]
4955}
4956
4957fuzzer_test("net_mime_sniffer_fuzzer") {
4958  sources = [ "base/mime_sniffer_fuzzer.cc" ]
4959  deps = [
4960    ":net_fuzzer_test_support",
4961    "//base",
4962    "//net",
4963  ]
4964  dict = "data/fuzzer_dictionaries/net_mime_sniffer_fuzzer.dict"
4965}
4966
4967fuzzer_test("net_parse_proxy_list_pac_fuzzer") {
4968  sources = [ "proxy_resolution/parse_proxy_list_pac_fuzzer.cc" ]
4969  deps = [
4970    ":net_fuzzer_test_support",
4971    "//net",
4972  ]
4973}
4974
4975fuzzer_test("net_parse_proxy_list_fuzzer") {
4976  sources = [ "proxy_resolution/parse_proxy_list_fuzzer.cc" ]
4977  deps = [
4978    ":net_fuzzer_test_support",
4979    "//net",
4980  ]
4981}
4982
4983fuzzer_test("net_parse_proxy_bypass_rules_fuzzer") {
4984  sources = [ "proxy_resolution/parse_proxy_bypass_rules_fuzzer.cc" ]
4985
4986  libfuzzer_options = [
4987    # The proxy bypass rules aren't very complicated, so this is more than
4988    # enough to explore the grammar. Allowing the length to become too large
4989    # can result in test timeouts (https://crbug.com/813619).
4990    "max_len=512",
4991  ]
4992
4993  deps = [
4994    ":net_fuzzer_test_support",
4995    "//net",
4996  ]
4997}
4998
4999fuzzer_test("net_parse_proxy_rules_fuzzer") {
5000  sources = [ "proxy_resolution/parse_proxy_rules_fuzzer.cc" ]
5001  deps = [
5002    ":net_fuzzer_test_support",
5003    "//net",
5004  ]
5005  dict = "data/fuzzer_dictionaries/net_parse_proxy_bypass_rules_fuzzer.dict"
5006}
5007
5008fuzzer_test("net_parse_ip_pattern_fuzzer") {
5009  sources = [ "base/parse_ip_pattern_fuzzer.cc" ]
5010  deps = [
5011    ":net_fuzzer_test_support",
5012    "//net",
5013  ]
5014}
5015
5016fuzzer_test("net_get_domain_and_registry_fuzzer") {
5017  sources =
5018      [ "base/registry_controlled_domains/get_domain_and_registry_fuzzer.cc" ]
5019  deps = [
5020    ":net_fuzzer_test_support",
5021    "//base",
5022    "//net",
5023  ]
5024  dict = "data/fuzzer_dictionaries/net_get_domain_and_registry_fuzzer.dict"
5025}
5026
5027fuzzer_test("net_lookup_string_in_fixed_set_fuzzer") {
5028  sources = [ "base/lookup_string_in_fixed_set_fuzzer.cc" ]
5029  deps = [
5030    ":net_fuzzer_test_support",
5031    "//base",
5032    "//net",
5033    "//net/base/registry_controlled_domains:lookup_strings_test_sets",
5034  ]
5035  dict = "data/fuzzer_dictionaries/net_get_domain_and_registry_fuzzer.dict"
5036}
5037
5038fuzzer_test("net_cert_ct_decode_signed_certificate_timestamp_fuzzer") {
5039  sources = [ "cert/decode_signed_certificate_timestamp_fuzzer.cc" ]
5040  deps = [
5041    ":net_fuzzer_test_support",
5042    "//base",
5043    "//net",
5044  ]
5045}
5046
5047fuzzer_test("net_cert_verify_name_match_fuzzer") {
5048  sources = [ "cert/internal/verify_name_match_fuzzer.cc" ]
5049  deps = [
5050    ":net_fuzzer_test_support",
5051    "//base",
5052    "//net",
5053  ]
5054}
5055
5056fuzzer_test("net_cert_normalize_name_fuzzer") {
5057  sources = [ "cert/internal/verify_name_match_normalizename_fuzzer.cc" ]
5058  deps = [
5059    "//base",
5060    "//net",
5061  ]
5062}
5063
5064fuzzer_test("net_cert_verify_name_in_subtree_fuzzer") {
5065  sources = [ "cert/internal/verify_name_match_verifynameinsubtree_fuzzer.cc" ]
5066  deps = [
5067    ":net_fuzzer_test_support",
5068    "//base",
5069    "//net",
5070  ]
5071}
5072
5073fuzzer_test("net_cert_crl_parse_crl_certificatelist_fuzzer") {
5074  sources = [ "cert/internal/crl_parse_crl_certificatelist_fuzzer.cc" ]
5075  seed_corpus = "data/fuzzer_data/crl_parse_crl_certificatelist_fuzzer"
5076  deps = [
5077    "//base",
5078    "//net",
5079  ]
5080}
5081
5082fuzzer_test("net_cert_crl_parse_crl_tbscertlist_fuzzer") {
5083  sources = [ "cert/internal/crl_parse_crl_tbscertlist_fuzzer.cc" ]
5084  seed_corpus = "data/fuzzer_data/crl_parse_crl_tbscertlist_fuzzer"
5085  deps = [
5086    "//base",
5087    "//net",
5088  ]
5089}
5090
5091fuzzer_test("net_cert_crl_parse_issuing_distribution_point_fuzzer") {
5092  sources = [ "cert/internal/crl_parse_issuing_distribution_point_fuzzer.cc" ]
5093  seed_corpus = "data/fuzzer_data/crl_parse_issuing_distribution_point_fuzzer"
5094  deps = [
5095    "//base",
5096    "//net",
5097  ]
5098}
5099
5100fuzzer_test("net_cert_crl_getcrlstatusforcert_fuzzer") {
5101  sources = [ "cert/internal/crl_getcrlstatusforcert_fuzzer.cc" ]
5102  seed_corpus = "data/fuzzer_data/crl_getcrlstatusforcert_fuzzer"
5103  deps = [
5104    "//base",
5105    "//net",
5106  ]
5107}
5108
5109fuzzer_test("net_cert_ocsp_parse_ocsp_cert_id_fuzzer") {
5110  sources = [ "cert/internal/ocsp_parse_ocsp_cert_id_fuzzer.cc" ]
5111  seed_corpus = "data/fuzzer_data/parse_ocsp_cert_id_fuzzer"
5112  deps = [
5113    "//base",
5114    "//net",
5115  ]
5116}
5117
5118fuzzer_test("net_cert_ocsp_parse_ocsp_single_response_fuzzer") {
5119  sources = [ "cert/internal/ocsp_parse_ocsp_single_response_fuzzer.cc" ]
5120  seed_corpus = "data/fuzzer_data/parse_ocsp_single_response_fuzzer"
5121  deps = [
5122    "//base",
5123    "//net",
5124  ]
5125}
5126
5127fuzzer_test("net_cert_ocsp_parse_ocsp_response_data_fuzzer") {
5128  sources = [ "cert/internal/ocsp_parse_ocsp_response_data_fuzzer.cc" ]
5129  seed_corpus = "data/fuzzer_data/parse_ocsp_response_data_fuzzer"
5130  deps = [
5131    "//base",
5132    "//net",
5133  ]
5134}
5135
5136fuzzer_test("net_cert_ocsp_parse_ocsp_response_fuzzer") {
5137  sources = [ "cert/internal/ocsp_parse_ocsp_response_fuzzer.cc" ]
5138  seed_corpus = "data/fuzzer_data/parse_ocsp_response_fuzzer"
5139  deps = [
5140    "//base",
5141    "//net",
5142  ]
5143}
5144
5145fuzzer_test("net_cert_parse_authority_key_identifier_fuzzer") {
5146  sources = [ "cert/internal/parse_authority_key_identifier_fuzzer.cc" ]
5147  seed_corpus = "data/fuzzer_data/parse_authority_key_identifier_fuzzer"
5148  deps = [
5149    "//base",
5150    "//net",
5151  ]
5152}
5153
5154fuzzer_test("net_cert_parse_certificate_fuzzer") {
5155  sources = [ "cert/internal/parse_certificate_fuzzer.cc" ]
5156  deps = [
5157    "//base",
5158    "//net",
5159  ]
5160}
5161
5162fuzzer_test("net_canonical_cookie_fuzzer") {
5163  sources = [ "cookies/canonical_cookie_fuzzer.cc" ]
5164  deps = [
5165    ":net_fuzzer_test_support",
5166    "//net",
5167  ]
5168  seed_corpus = "data/fuzzer_data/net_canonical_cookie_fuzzer/"
5169}
5170
5171fuzzer_test("net_parse_cookie_line_fuzzer") {
5172  sources = [ "cookies/parse_cookie_line_fuzzer.cc" ]
5173  deps = [
5174    ":net_fuzzer_test_support",
5175    "//net",
5176  ]
5177}
5178
5179fuzzer_test("net_http_stream_parser_fuzzer") {
5180  sources = [ "http/http_stream_parser_fuzzer.cc" ]
5181  deps = [
5182    ":net_fuzzer_test_support",
5183    ":test_support",
5184    "//base",
5185    "//net",
5186  ]
5187  dict = "data/fuzzer_dictionaries/net_http_stream_parser_fuzzer.dict"
5188}
5189
5190if (!is_win) {
5191  fuzzer_test("net_ntlm_ntlm_client_fuzzer") {
5192    sources = [
5193      "ntlm/ntlm_client_fuzzer.cc",
5194      "ntlm/ntlm_test_data.h",
5195    ]
5196    deps = [
5197      ":net_fuzzer_test_support",
5198      ":test_support",
5199      "//base",
5200      "//net",
5201    ]
5202    dict = "data/fuzzer_dictionaries/net_ntlm_ntlm_client_fuzzer.dict"
5203    seed_corpus = "data/fuzzer_data/ntlm_client_fuzzer/"
5204  }
5205}
5206
5207if (!disable_brotli_filter) {
5208  fuzzer_test("net_brotli_source_stream_fuzzer") {
5209    sources = [ "filter/brotli_source_stream_fuzzer.cc" ]
5210    deps = [
5211      ":net_fuzzer_test_support",
5212      ":test_support",
5213      "//base",
5214      "//net",
5215    ]
5216  }
5217}
5218
5219fuzzer_test("net_gzip_source_stream_fuzzer") {
5220  sources = [ "filter/gzip_source_stream_fuzzer.cc" ]
5221  deps = [
5222    ":net_fuzzer_test_support",
5223    ":test_support",
5224    "//base",
5225    "//net",
5226  ]
5227}
5228
5229fuzzer_test("net_crl_set_fuzzer") {
5230  sources = [ "cert/crl_set_fuzzer.cc" ]
5231  deps = [
5232    ":net_fuzzer_test_support",
5233    ":test_support",
5234    "//base",
5235    "//net",
5236  ]
5237  seed_corpus = "data/fuzzer_data/net_crl_set_fuzzer/"
5238}
5239
5240if (!disable_ftp_support) {
5241  fuzzer_test("net_ftp_ctrl_response_fuzzer") {
5242    sources = [ "ftp/ftp_ctrl_response_fuzzer.cc" ]
5243    deps = [
5244      ":net_fuzzer_test_support",
5245      "//base",
5246      "//net",
5247    ]
5248  }
5249
5250  fuzzer_test("net_ftp_directory_listing_fuzzer") {
5251    sources = [ "ftp/ftp_directory_listing_fuzzer.cc" ]
5252    deps = [
5253      ":net_fuzzer_test_support",
5254      "//base",
5255      "//net",
5256    ]
5257
5258    # TODO(https://crbug.com/921297): Re-enable once source of timeout is
5259    # understood (probably just needs to restrict maximum input size).
5260    additional_configs = [ "//testing/libfuzzer:no_clusterfuzz" ]
5261  }
5262
5263  fuzzer_test("net_url_request_ftp_fuzzer") {
5264    sources = [ "url_request/url_request_ftp_fuzzer.cc" ]
5265    deps = [
5266      ":net_fuzzer_test_support",
5267      ":test_support",
5268      "//base",
5269      "//net",
5270    ]
5271    dict = "data/fuzzer_dictionaries/net_url_request_ftp_fuzzer.dict"
5272    seed_corpus = "data/fuzzer_data/net_url_request_ftp_fuzzer/"
5273
5274    # TODO(https://crbug.com/962087): Re-enable once source of timeout is
5275    # understood (probably just needs to restrict maximum input size).
5276    additional_configs = [ "//testing/libfuzzer:no_clusterfuzz" ]
5277  }
5278}
5279
5280fuzzer_test("net_unescape_url_component_fuzzer") {
5281  sources = [ "base/unescape_url_component_fuzzer.cc" ]
5282  deps = [
5283    ":net_fuzzer_test_support",
5284    "//base",
5285    "//net",
5286  ]
5287  dict = "data/fuzzer_dictionaries/unescape_url_component_fuzzer.dict"
5288  libfuzzer_options = [ "max_len = 2048" ]
5289}
5290
5291fuzzer_test("net_websocket_deflate_stream_fuzzer") {
5292  sources = [ "websockets/websocket_deflate_stream_fuzzer.cc" ]
5293  deps = [
5294    ":net_fuzzer_test_support",
5295    "//net",
5296  ]
5297  dict = "data/fuzzer_dictionaries/net_websocket_frame_parser_fuzzer.dict"
5298  libfuzzer_options = [ "max_len=512" ]
5299}
5300
5301fuzzer_test("net_websocket_extension_parser_fuzzer") {
5302  sources = [ "websockets/websocket_extension_parser_fuzzer.cc" ]
5303  deps = [
5304    ":net_fuzzer_test_support",
5305    "//net",
5306  ]
5307  dict = "data/fuzzer_dictionaries/net_websocket_extension_parser_fuzzer.dict"
5308  libfuzzer_options = [ "max_len = 256" ]
5309}
5310
5311fuzzer_test("net_websocket_frame_parser_fuzzer") {
5312  sources = [ "websockets/websocket_frame_parser_fuzzer.cc" ]
5313  deps = [
5314    ":net_fuzzer_test_support",
5315    "//net",
5316  ]
5317  dict = "data/fuzzer_dictionaries/net_websocket_frame_parser_fuzzer.dict"
5318  libfuzzer_options = [ "max_len=256" ]
5319}
5320
5321fuzzer_test("net_http_chunked_decoder_fuzzer") {
5322  sources = [ "http/http_chunked_decoder_fuzzer.cc" ]
5323  deps = [
5324    ":net_fuzzer_test_support",
5325    "//net",
5326  ]
5327  dict = "data/fuzzer_dictionaries/http_chunked_decoder_fuzzer.dict"
5328}
5329
5330fuzzer_test("net_http_auth_handler_basic_fuzzer") {
5331  sources = [ "http/http_auth_handler_basic_fuzzer.cc" ]
5332  dict = "data/fuzzer_dictionaries/net_http_auth_handler_basic_fuzzer.dict"
5333  deps = [
5334    ":net_fuzzer_test_support",
5335    ":test_support",
5336    "//net",
5337  ]
5338}
5339
5340fuzzer_test("net_http_auth_handler_digest_fuzzer") {
5341  sources = [ "http/http_auth_handler_digest_fuzzer.cc" ]
5342  dict = "data/fuzzer_dictionaries/net_http_auth_handler_digest_fuzzer.dict"
5343  deps = [
5344    ":net_fuzzer_test_support",
5345    ":test_support",
5346    "//net",
5347  ]
5348}
5349
5350fuzzer_test("net_http_content_disposition_fuzzer") {
5351  sources = [ "http/http_content_disposition_fuzzer.cc" ]
5352  dict = "data/fuzzer_dictionaries/net_http_content_disposition_fuzzer.dict"
5353  deps = [
5354    ":net_fuzzer_test_support",
5355    "//net",
5356  ]
5357}
5358
5359fuzzer_test("net_http_proxy_client_socket_fuzzer") {
5360  sources = [ "http/http_proxy_client_socket_fuzzer.cc" ]
5361  deps = [
5362    ":net_fuzzer_test_support",
5363    ":test_support",
5364    "//base",
5365    "//net",
5366  ]
5367  dict = "data/fuzzer_dictionaries/net_http_proxy_client_socket_fuzzer.dict"
5368}
5369
5370fuzzer_test("net_structured_headers_fuzzer") {
5371  sources = [ "http/structured_headers_fuzzer.cc" ]
5372  deps = [
5373    ":net_fuzzer_test_support",
5374    ":test_support",
5375    "//base",
5376    "//net",
5377  ]
5378  seed_corpus = "data/fuzzer_data/structured_headers_corpus"
5379}
5380
5381fuzzer_test("net_parse_url_hostname_to_address_fuzzer") {
5382  sources = [ "base/parse_url_hostname_to_address_fuzzer.cc" ]
5383  deps = [
5384    ":net_fuzzer_test_support",
5385    "//base",
5386    "//net",
5387  ]
5388  libfuzzer_options = [ "max_len=512" ]
5389  seed_corpus = "data/fuzzer_data/hostnames/"
5390}
5391
5392fuzzer_test("net_quic_crypto_framer_parse_message_fuzzer") {
5393  sources = [ "quic/quic_crypto_framer_parse_message_fuzzer.cc" ]
5394  deps = [
5395    ":net_fuzzer_test_support",
5396    "//base",
5397    "//net",
5398  ]
5399}
5400
5401fuzzer_test("net_quic_transport_parameters_fuzzer") {
5402  sources = [ "quic/quic_transport_parameters_fuzzer.cc" ]
5403  deps = [
5404    ":net_fuzzer_test_support",
5405    "//base",
5406    "//net",
5407  ]
5408}
5409
5410fuzzer_test("net_socks_client_socket_fuzzer") {
5411  sources = [ "socket/socks_client_socket_fuzzer.cc" ]
5412  deps = [
5413    ":net_fuzzer_test_support",
5414    ":test_support",
5415    "//base",
5416    "//net",
5417  ]
5418}
5419
5420fuzzer_test("net_socks5_client_socket_fuzzer") {
5421  sources = [ "socket/socks5_client_socket_fuzzer.cc" ]
5422  deps = [
5423    ":net_fuzzer_test_support",
5424    ":test_support",
5425    "//base",
5426    "//net",
5427  ]
5428}
5429
5430fuzzer_test("net_url_request_fuzzer") {
5431  sources = [ "url_request/url_request_fuzzer.cc" ]
5432  deps = [
5433    ":net_fuzzer_test_support",
5434    ":test_support",
5435    "//base",
5436    "//net",
5437  ]
5438  dict = "data/fuzzer_dictionaries/net_url_request_fuzzer.dict"
5439}
5440
5441fuzzer_test("net_auth_challenge_tokenizer_fuzzer") {
5442  sources = [ "http/http_auth_challenge_tokenizer_fuzzer.cc" ]
5443  deps = [
5444    ":net_fuzzer_test_support",
5445    ":test_support",
5446    "//base",
5447    "//net",
5448  ]
5449}
5450
5451fuzzer_test("net_http_security_headers_expect_ct_fuzzer") {
5452  sources = [ "http/http_security_headers_expect_ct_fuzzer.cc" ]
5453  deps = [
5454    ":net_fuzzer_test_support",
5455    "//base",
5456    "//net",
5457    "//url",
5458  ]
5459  dict = "data/fuzzer_dictionaries/net_http_security_headers_fuzzer.dict"
5460  seed_corpus = "data/fuzzer_data/http_security_headers/"
5461}
5462
5463fuzzer_test("net_http_security_headers_hsts_fuzzer") {
5464  sources = [ "http/http_security_headers_hsts_fuzzer.cc" ]
5465  deps = [
5466    "//base",
5467    "//net",
5468  ]
5469  dict = "data/fuzzer_dictionaries/net_http_security_headers_fuzzer.dict"
5470  seed_corpus = "data/fuzzer_data/http_security_headers/"
5471}
5472
5473fuzzer_test("net_http_transport_security_state_static_fuzzer") {
5474  sources = [ "http/transport_security_state_static_fuzzer.cc" ]
5475  deps = [
5476    ":net_fuzzer_test_support",
5477    "//net",
5478  ]
5479  dict =
5480      "data/fuzzer_dictionaries/net_http_transport_security_state_fuzzer.dict"
5481}
5482
5483fuzzer_test("net_spdy_session_fuzzer") {
5484  sources = [ "spdy/spdy_session_fuzzer.cc" ]
5485  deps = [
5486    ":net_fuzzer_test_support",
5487    ":test_support",
5488    "//base",
5489    "//net",
5490    "//net/data/ssl/certificates:generate_fuzzer_cert_includes",
5491  ]
5492  dict = "data/fuzzer_dictionaries/net_spdy_session_fuzzer.dict"
5493  seed_corpus = "data/fuzzer_data/net_spdy_session_fuzzer/"
5494}
5495
5496fuzzer_test("net_http2_frame_decoder_fuzzer") {
5497  sources = [ "spdy/fuzzing/http2_frame_decoder_fuzzer.cc" ]
5498  deps = [
5499    ":net_fuzzer_test_support",
5500    ":test_support",
5501    "//base",
5502    "//net",
5503  ]
5504}
5505
5506fuzzer_test("net_hpack_decoder_fuzzer") {
5507  sources = [ "spdy/fuzzing/hpack_decoder_fuzzer.cc" ]
5508  deps = [
5509    ":net_fuzzer_test_support",
5510    ":test_support",
5511    "//base",
5512    "//net",
5513  ]
5514}
5515
5516proto_library("reporting_policy_proto") {
5517  proto_in_dir = "//"
5518  sources = [ "reporting/reporting_policy.proto" ]
5519  link_deps = [ "//testing/libfuzzer/proto:json_proto" ]
5520}
5521
5522fuzzer_test("net_reporting_header_parser_fuzzer") {
5523  sources = [ "reporting/reporting_header_parser_fuzzer.cc" ]
5524
5525  deps = [
5526    ":net_fuzzer_test_support",
5527    ":reporting_policy_proto",
5528    ":test_support",
5529    "//base",
5530    "//net",
5531    "//testing/libfuzzer/proto:json_proto",
5532    "//testing/libfuzzer/proto:json_proto_converter",
5533    "//third_party/libprotobuf-mutator",
5534  ]
5535}
5536
5537fuzzer_test("net_quic_stream_factory_fuzzer") {
5538  sources = [ "quic/quic_stream_factory_fuzzer.cc" ]
5539
5540  deps = [
5541    ":net_fuzzer_test_support",
5542    ":quic_test_tools",
5543    ":test_support",
5544    "//net",
5545    "//net/data/ssl/certificates:generate_fuzzer_cert_includes",
5546  ]
5547}
5548
5549fuzzer_test("net_uri_template_fuzzer") {
5550  sources = [ "third_party/uri_template/uri_template_fuzzer.cc" ]
5551  deps = [
5552    ":net_fuzzer_test_support",
5553    "//base",
5554    "//net",
5555  ]
5556  dict = "data/fuzzer_dictionaries/net_uri_template_fuzzer.dict"
5557}
5558
5559if (is_linux) {
5560  fuzzer_test("net_base_address_tracker_linux_fuzzer") {
5561    sources = [ "base/address_tracker_linux_fuzzer.cc" ]
5562    deps = [
5563      ":net_fuzzer_test_support",
5564      ":test_support",
5565      "//base",
5566      "//net",
5567    ]
5568  }
5569}
5570