#include "net/log/net_log_util.h"
#include <algorithm>
#include <string>
#include <utility>
#include <vector>
#include "base/check_op.h"
#include "base/feature_list.h"
#include "base/metrics/field_trial.h"
#include "base/strings/strcat.h"
#include "base/strings/string_number_conversions.h"
#include "base/strings/string_split.h"
#include "base/strings/string_util.h"
#include "base/time/time.h"
#include "base/values.h"
#include "net/base/address_family.h"
#include "net/base/load_states.h"
#include "net/base/net_errors.h"
#include "net/base/net_info_source_list.h"
#include "net/cert/cert_verifier.h"
#include "net/disk_cache/disk_cache.h"
#include "net/dns/host_cache.h"
#include "net/dns/host_resolver.h"
#include "net/dns/public/dns_query_type.h"
#include "net/dns/public/doh_provider_entry.h"
#include "net/dns/public/secure_dns_mode.h"
#include "net/http/http_cache.h"
#include "net/http/http_network_session.h"
#include "net/http/http_server_properties.h"
#include "net/http/http_transaction_factory.h"
#include "net/log/net_log_capture_mode.h"
#include "net/log/net_log_entry.h"
#include "net/log/net_log_event_type.h"
#include "net/log/net_log_values.h"
#include "net/log/net_log_with_source.h"
#include "net/proxy_resolution/proxy_config.h"
#include "net/proxy_resolution/proxy_resolution_service.h"
#include "net/proxy_resolution/proxy_retry_info.h"
#include "net/socket/ssl_client_socket.h"
#include "net/third_party/quiche/src/quiche/quic/core/quic_error_codes.h"
#include "net/third_party/quiche/src/quiche/quic/core/quic_packets.h"
#include "net/url_request/url_request.h"
#include "net/url_request/url_request_context.h"
#include "third_party/boringssl/src/pki/simple_path_builder_delegate.h"
#include "third_party/boringssl/src/pki/trust_store.h"
#if BUILDFLAG(ENABLE_REPORTING)
#include "net/network_error_logging/network_error_logging_service.h"
#include "net/reporting/reporting_service.h"
#endif
namespace net {
namespace {
const int kLogFormatVersion = …;
struct StringToConstant { … };
const StringToConstant kCertStatusFlags[] = …;
const StringToConstant kLoadFlags[] = …;
const StringToConstant kLoadStateTable[] = …;
const short kNetErrors[] = …;
disk_cache::Backend* GetDiskCacheBackend(URLRequestContext* context) { … }
bool RequestCreatedBefore(const URLRequest* request1,
const URLRequest* request2) { … }
base::Value GetActiveFieldTrialList() { … }
}
base::Value::Dict GetNetConstants() { … }
NET_EXPORT base::Value::Dict GetNetInfo(URLRequestContext* context) { … }
NET_EXPORT void CreateNetLogEntriesForActiveObjects(
const std::set<URLRequestContext*>& contexts,
NetLog::ThreadSafeObserver* observer) { … }
}