Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(295)

Side by Side Diff: net/quic/test_tools/fake_proof_source.h

Issue 2463093003: Landing Recent QUIC changes until Sat Oct 29 14:59:35. (Closed)
Patch Set: add change to quiartc_session_test.cc Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « net/quic/test_tools/crypto_test_utils_test.cc ('k') | net/quic/test_tools/fake_proof_source.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2016 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2016 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_TEST_TOOLS_FAKE_PROOF_SOURCE_H_ 5 #ifndef NET_QUIC_TEST_TOOLS_FAKE_PROOF_SOURCE_H_
6 #define NET_QUIC_TEST_TOOLS_FAKE_PROOF_SOURCE_H_ 6 #define NET_QUIC_TEST_TOOLS_FAKE_PROOF_SOURCE_H_
7 7
8 #include <memory> 8 #include <memory>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
(...skipping 17 matching lines...) Expand all
28 // distinction is necessary to ensure that GetProof can be called without 28 // distinction is necessary to ensure that GetProof can be called without
29 // interference during test case setup. 29 // interference during test case setup.
30 void Activate(); 30 void Activate();
31 31
32 // ProofSource interface 32 // ProofSource interface
33 bool GetProof(const IPAddress& server_ip, 33 bool GetProof(const IPAddress& server_ip,
34 const std::string& hostname, 34 const std::string& hostname,
35 const std::string& server_config, 35 const std::string& server_config,
36 QuicVersion quic_version, 36 QuicVersion quic_version,
37 base::StringPiece chlo_hash, 37 base::StringPiece chlo_hash,
38 const QuicTagVector& connection_options,
38 scoped_refptr<ProofSource::Chain>* out_chain, 39 scoped_refptr<ProofSource::Chain>* out_chain,
39 std::string* out_signature, 40 std::string* out_signature,
40 std::string* out_leaf_cert_sct) override; 41 std::string* out_leaf_cert_sct) override;
41 void GetProof(const IPAddress& server_ip, 42 void GetProof(const IPAddress& server_ip,
42 const std::string& hostname, 43 const std::string& hostname,
43 const std::string& server_config, 44 const std::string& server_config,
44 QuicVersion quic_version, 45 QuicVersion quic_version,
45 base::StringPiece chlo_hash, 46 base::StringPiece chlo_hash,
47 const QuicTagVector& connection_options,
46 std::unique_ptr<ProofSource::Callback> callback) override; 48 std::unique_ptr<ProofSource::Callback> callback) override;
47 49
48 // Get the number of callbacks which are pending 50 // Get the number of callbacks which are pending
49 int NumPendingCallbacks() const; 51 int NumPendingCallbacks() const;
50 52
51 // Invoke a pending callback. The index refers to the position in params_ of 53 // Invoke a pending callback. The index refers to the position in params_ of
52 // the callback to be completed. 54 // the callback to be completed.
53 void InvokePendingCallback(int n); 55 void InvokePendingCallback(int n);
54 56
55 private: 57 private:
56 std::unique_ptr<ProofSource> delegate_; 58 std::unique_ptr<ProofSource> delegate_;
57 bool active_ = false; 59 bool active_ = false;
58 60
59 struct Params { 61 struct Params {
60 Params(const IPAddress& server_ip, 62 Params(const IPAddress& server_ip,
61 std::string hostname, 63 std::string hostname,
62 std::string server_config, 64 std::string server_config,
63 QuicVersion quic_version, 65 QuicVersion quic_version,
64 std::string chlo_hash, 66 std::string chlo_hash,
67 const QuicTagVector& connection_options,
65 std::unique_ptr<ProofSource::Callback> callback); 68 std::unique_ptr<ProofSource::Callback> callback);
66 ~Params(); 69 ~Params();
67 Params(Params&& other); 70 Params(Params&& other);
68 Params& operator=(Params&& other); 71 Params& operator=(Params&& other);
69 72
70 IPAddress server_ip; 73 IPAddress server_ip;
71 std::string hostname; 74 std::string hostname;
72 std::string server_config; 75 std::string server_config;
73 QuicVersion quic_version; 76 QuicVersion quic_version;
74 std::string chlo_hash; 77 std::string chlo_hash;
78 QuicTagVector connection_options;
75 std::unique_ptr<ProofSource::Callback> callback; 79 std::unique_ptr<ProofSource::Callback> callback;
76 }; 80 };
77 81
78 std::vector<Params> params_; 82 std::vector<Params> params_;
79 }; 83 };
80 84
81 } // namespace test 85 } // namespace test
82 } // namespace net 86 } // namespace net
83 87
84 #endif // NET_QUIC_TEST_TOOLS_FAKE_PROOF_SOURCE_H_ 88 #endif // NET_QUIC_TEST_TOOLS_FAKE_PROOF_SOURCE_H_
OLDNEW
« no previous file with comments | « net/quic/test_tools/crypto_test_utils_test.cc ('k') | net/quic/test_tools/fake_proof_source.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698