#include "services/network/public/cpp/cors/origin_access_entry.h"
#include "base/strings/string_util.h"
#include "net/base/registry_controlled_domains/registry_controlled_domain.h"
#include "services/network/public/mojom/cors_origin_pattern.mojom.h"
#include "url/origin.h"
#include "url/url_util.h"
namespace network::cors {
namespace {
bool IsPublicSuffixSubdomainOfHost(const std::string& subdomain,
const std::string& host) { … }
}
bool IsSubdomainOfHost(const std::string& subdomain, const std::string& host) { … }
OriginAccessEntry::OriginAccessEntry(
const std::string& protocol,
const std::string& host,
const uint16_t port,
const mojom::CorsDomainMatchMode domain_match_mode,
const mojom::CorsPortMatchMode port_match_mode,
const mojom::CorsOriginAccessMatchPriority priority)
: … { … }
OriginAccessEntry::OriginAccessEntry(OriginAccessEntry&& from) = default;
OriginAccessEntry::MatchResult OriginAccessEntry::MatchesOrigin(
const url::Origin& origin) const { … }
OriginAccessEntry::MatchResult OriginAccessEntry::MatchesDomain(
const std::string& domain) const { … }
mojo::StructPtr<mojom::CorsOriginPattern>
OriginAccessEntry::CreateCorsOriginPattern() const { … }
}