#include "net/dns/public/doh_provider_entry.h"
#include <string_view>
#include <utility>
#include "base/check_op.h"
#include "base/feature_list.h"
#include "base/no_destructor.h"
#include "base/ranges/algorithm.h"
#include "net/dns/public/dns_over_https_server_config.h"
#include "net/dns/public/util.h"
namespace net {
namespace {
std::set<IPAddress> ParseIPs(const std::set<std::string_view>& ip_strs) { … }
DnsOverHttpsServerConfig ParseValidDohTemplate(
std::string server_template,
const std::set<std::string_view>& endpoint_ip_strs) { … }
}
#define MAKE_BASE_FEATURE_WITH_STATIC_STORAGE …
const DohProviderEntry::List& DohProviderEntry::GetList() { … }
#undef MAKE_BASE_FEATURE_WITH_STATIC_STORAGE
DohProviderEntry DohProviderEntry::ConstructForTesting(
std::string provider,
const base::Feature* feature,
std::set<std::string_view> dns_over_53_server_ip_strs,
std::set<std::string> dns_over_tls_hostnames,
std::string dns_over_https_template,
std::string ui_name,
std::string privacy_policy,
bool display_globally,
std::set<std::string> display_countries,
LoggingLevel logging_level) { … }
DohProviderEntry::~DohProviderEntry() = default;
DohProviderEntry::DohProviderEntry(
std::string provider,
const base::Feature* feature,
std::set<std::string_view> dns_over_53_server_ip_strs,
std::set<std::string> dns_over_tls_hostnames,
std::string dns_over_https_template,
std::string ui_name,
std::string privacy_policy,
bool display_globally,
std::set<std::string> display_countries,
LoggingLevel logging_level,
std::set<std::string_view> dns_over_https_server_ip_strs)
: … { … }
}