#include "services/network/host_resolver.h"
#include <optional>
#include <utility>
#include "base/functional/bind.h"
#include "base/no_destructor.h"
#include "base/not_fatal_until.h"
#include "base/task/sequenced_task_runner.h"
#include "build/build_config.h"
#include "mojo/public/cpp/bindings/enum_traits.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
#include "net/base/host_port_pair.h"
#include "net/base/net_errors.h"
#include "net/dns/host_resolver.h"
#include "net/dns/public/host_resolver_source.h"
#include "net/dns/public/secure_dns_policy.h"
#include "net/log/net_log.h"
#include "net/net_buildflags.h"
#include "services/network/host_resolver_mdns_listener.h"
#include "services/network/public/cpp/host_resolver_mojom_traits.h"
#include "services/network/public/mojom/host_resolver.mojom-shared.h"
#include "services/network/public/mojom/host_resolver.mojom.h"
#include "services/network/resolve_host_request.h"
namespace network {
namespace {
HostResolver::ResolveHostCallback& GetResolveHostCallback() { … }
std::optional<net::HostResolver::ResolveHostParameters>
ConvertOptionalParameters(
const mojom::ResolveHostParametersPtr& mojo_parameters) { … }
}
HostResolver::HostResolver(
mojo::PendingReceiver<mojom::HostResolver> resolver_receiver,
ConnectionShutdownCallback connection_shutdown_callback,
net::HostResolver* internal_resolver,
std::unique_ptr<net::HostResolver> owned_internal_resolver,
net::NetLog* net_log)
: … { … }
HostResolver::HostResolver(net::HostResolver* internal_resolver,
net::NetLog* net_log)
: … { … }
HostResolver::~HostResolver() { … }
void HostResolver::ResolveHost(
mojom::HostResolverHostPtr host,
const net::NetworkAnonymizationKey& network_anonymization_key,
mojom::ResolveHostParametersPtr optional_parameters,
mojo::PendingRemote<mojom::ResolveHostClient> response_client) { … }
void HostResolver::MdnsListen(
const net::HostPortPair& host,
net::DnsQueryType query_type,
mojo::PendingRemote<mojom::MdnsListenClient> response_client,
MdnsListenCallback callback) { … }
size_t HostResolver::GetNumOutstandingRequestsForTesting() const { … }
void HostResolver::SetResolveHostCallbackForTesting(
ResolveHostCallback callback) { … }
void HostResolver::AsyncSetUp() { … }
void HostResolver::OnResolveHostComplete(ResolveHostRequest* request,
int error) { … }
void HostResolver::OnMdnsListenerCancelled(HostResolverMdnsListener* listener) { … }
void HostResolver::OnConnectionError() { … }
}