OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef NET_QUIC_CRYPTO_PROOF_VERIFIER_CHROMIUM_H_ | 5 #ifndef NET_QUIC_CRYPTO_PROOF_VERIFIER_CHROMIUM_H_ |
6 #define NET_QUIC_CRYPTO_PROOF_VERIFIER_CHROMIUM_H_ | 6 #define NET_QUIC_CRYPTO_PROOF_VERIFIER_CHROMIUM_H_ |
7 | 7 |
| 8 #include <map> |
8 #include <memory> | 9 #include <memory> |
9 #include <set> | |
10 #include <string> | 10 #include <string> |
11 #include <vector> | 11 #include <vector> |
12 | 12 |
13 #include "base/compiler_specific.h" | 13 #include "base/compiler_specific.h" |
14 #include "base/macros.h" | 14 #include "base/macros.h" |
15 #include "net/base/net_export.h" | 15 #include "net/base/net_export.h" |
16 #include "net/cert/cert_verify_result.h" | 16 #include "net/cert/cert_verify_result.h" |
17 #include "net/cert/ct_verify_result.h" | 17 #include "net/cert/ct_verify_result.h" |
18 #include "net/cert/x509_certificate.h" | 18 #include "net/cert/x509_certificate.h" |
19 #include "net/log/net_log_with_source.h" | 19 #include "net/log/net_log_with_source.h" |
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
89 QuicAsyncStatus VerifyCertChain( | 89 QuicAsyncStatus VerifyCertChain( |
90 const std::string& hostname, | 90 const std::string& hostname, |
91 const std::vector<std::string>& certs, | 91 const std::vector<std::string>& certs, |
92 const ProofVerifyContext* verify_context, | 92 const ProofVerifyContext* verify_context, |
93 std::string* error_details, | 93 std::string* error_details, |
94 std::unique_ptr<ProofVerifyDetails>* verify_details, | 94 std::unique_ptr<ProofVerifyDetails>* verify_details, |
95 std::unique_ptr<ProofVerifierCallback> callback) override; | 95 std::unique_ptr<ProofVerifierCallback> callback) override; |
96 | 96 |
97 private: | 97 private: |
98 class Job; | 98 class Job; |
99 typedef std::set<Job*> JobSet; | |
100 | 99 |
101 void OnJobComplete(Job* job); | 100 void OnJobComplete(Job* job); |
102 | 101 |
103 // Set owning pointers to active jobs. | 102 // Set owning pointers to active jobs. |
104 JobSet active_jobs_; | 103 std::map<Job*, std::unique_ptr<Job>> active_jobs_; |
105 | 104 |
106 // Underlying verifier used to verify certificates. | 105 // Underlying verifier used to verify certificates. |
107 CertVerifier* const cert_verifier_; | 106 CertVerifier* const cert_verifier_; |
108 CTPolicyEnforcer* const ct_policy_enforcer_; | 107 CTPolicyEnforcer* const ct_policy_enforcer_; |
109 | 108 |
110 TransportSecurityState* const transport_security_state_; | 109 TransportSecurityState* const transport_security_state_; |
111 CTVerifier* const cert_transparency_verifier_; | 110 CTVerifier* const cert_transparency_verifier_; |
112 | 111 |
113 DISALLOW_COPY_AND_ASSIGN(ProofVerifierChromium); | 112 DISALLOW_COPY_AND_ASSIGN(ProofVerifierChromium); |
114 }; | 113 }; |
115 | 114 |
116 } // namespace net | 115 } // namespace net |
117 | 116 |
118 #endif // NET_QUIC_CRYPTO_PROOF_VERIFIER_CHROMIUM_H_ | 117 #endif // NET_QUIC_CRYPTO_PROOF_VERIFIER_CHROMIUM_H_ |
OLD | NEW |