Chromium Code Reviews| Index: chrome/browser/ssl/chrome_expect_ct_reporter.h |
| diff --git a/chrome/browser/ssl/chrome_expect_ct_reporter.h b/chrome/browser/ssl/chrome_expect_ct_reporter.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..0a558e30042842e72eb10852dd204edacc00bae7 |
| --- /dev/null |
| +++ b/chrome/browser/ssl/chrome_expect_ct_reporter.h |
| @@ -0,0 +1,38 @@ |
| +// Copyright 2015 The Chromium Authors. All rights reserved. |
|
eroman
2016/03/08 23:40:47
nit: 2016
estark
2016/03/08 23:46:32
Done.
|
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef CHROME_BROWSER_SSL_CHROME_EXPECT_CT_REPORTER_H_ |
| +#define CHROME_BROWSER_SSL_CHROME_EXPECT_CT_REPORTER_H_ |
| + |
| +#include "base/macros.h" |
| +#include "base/memory/scoped_ptr.h" |
| +#include "net/http/transport_security_state.h" |
| + |
| +namespace net { |
| +class CertificateReportSender; |
| +class URLRequestContext; |
| +} // namespace net |
| + |
| +// This class monitors for violations of CT policy and sends reports |
| +// about failures for sites that have opted in. Must be deleted before |
| +// the URLRequestContext that is passed to the constructor, so that it |
| +// can cancel its requests. |
| +class ChromeExpectCTReporter |
| + : public net::TransportSecurityState::ExpectCTReporter { |
| + public: |
| + explicit ChromeExpectCTReporter(net::URLRequestContext* request_context); |
| + ~ChromeExpectCTReporter() override; |
| + |
| + // net::ExpectCTReporter: |
| + void OnExpectCTFailed(const net::HostPortPair& host_port_pair, |
| + const GURL& report_uri, |
| + const net::SSLInfo& ssl_info) override; |
| + |
| + private: |
| + scoped_ptr<net::CertificateReportSender> report_sender_; |
| + |
| + DISALLOW_COPY_AND_ASSIGN(ChromeExpectCTReporter); |
| +}; |
| + |
| +#endif // CHROME_BROWSER_SSL_CHROME_EXPECT_CT_REPORTER_H_ |