chromium/net/http/http_auth_filter.h

// Copyright 2011 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef NET_HTTP_HTTP_AUTH_FILTER_H_
#define NET_HTTP_HTTP_AUTH_FILTER_H_

#include <string>

#include "net/base/net_export.h"
#include "net/http/http_auth.h"
#include "net/proxy_resolution/proxy_bypass_rules.h"

namespace url {
class SchemeHostPort;
}

namespace net {

// HttpAuthFilters determine whether an authentication scheme should be
// allowed for a particular peer.
class NET_EXPORT_PRIVATE HttpAuthFilter {};

// Allowlist HTTP authentication filter.
// Explicit allowlists of domains are set via SetAllowlist().
//
// Uses the ProxyBypassRules class to do allowlisting for servers.
// All proxies are allowed.
class NET_EXPORT HttpAuthFilterAllowlist : public HttpAuthFilter {};

}   // namespace net

#endif  // NET_HTTP_HTTP_AUTH_FILTER_H_