| Index: components/cronet/url_request_context_config.h
|
| diff --git a/components/cronet/url_request_context_config.h b/components/cronet/url_request_context_config.h
|
| index 7953d2d8075fd7cf407ff6d8db7c6180fa88274d..cf491383f4d52bd58fdb1bc91e430f3180053a30 100644
|
| --- a/components/cronet/url_request_context_config.h
|
| +++ b/components/cronet/url_request_context_config.h
|
| @@ -10,6 +10,7 @@
|
| #include "base/json/json_value_converter.h"
|
| #include "base/macros.h"
|
| #include "base/memory/scoped_vector.h"
|
| +#include "base/time/time.h"
|
|
|
| namespace net {
|
| class CertVerifier;
|
| @@ -41,6 +42,27 @@ struct URLRequestContextConfig {
|
| DISALLOW_COPY_AND_ASSIGN(QuicHint);
|
| };
|
|
|
| + // Public-Key-Pinning configuration structure.
|
| + struct Pkp {
|
| + Pkp();
|
| + ~Pkp();
|
| +
|
| + // Register |converter| for use in converter.Convert().
|
| + static void RegisterJSONConverter(base::JSONValueConverter<Pkp>* converter);
|
| +
|
| + // Host name.
|
| + std::string host;
|
| + // Pin hashes (currently SHA256 only).
|
| + ScopedVector<std::string> pin_hashes;
|
| + // Indicates whether the pinning should apply to the pinned host subdomains.
|
| + bool include_subdomains;
|
| + // Expiration date for the pins.
|
| + base::Time expiration_date;
|
| +
|
| + private:
|
| + DISALLOW_COPY_AND_ASSIGN(Pkp);
|
| + };
|
| +
|
| URLRequestContextConfig();
|
| ~URLRequestContextConfig();
|
|
|
| @@ -87,6 +109,8 @@ struct URLRequestContextConfig {
|
| std::string data_reduction_primary_proxy;
|
| std::string data_reduction_fallback_proxy;
|
| std::string data_reduction_secure_proxy_check_url;
|
| + // The list of public key pins.
|
| + ScopedVector<Pkp> pkp_list;
|
|
|
| // Certificate verifier for testing.
|
| scoped_ptr<net::CertVerifier> mock_cert_verifier;
|
|
|