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

Unified Diff: net/quic/test_tools/quic_stream_factory_peer.cc

Issue 2120703003: QUIC - Race Cert Verification with host resolution if certs are (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix for buildbot failure. Created 4 years, 4 months 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/quic/test_tools/quic_stream_factory_peer.h ('k') | net/tools/quic/test_tools/quic_test_client.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/test_tools/quic_stream_factory_peer.cc
diff --git a/net/quic/test_tools/quic_stream_factory_peer.cc b/net/quic/test_tools/quic_stream_factory_peer.cc
index b3e4087b15f1d7bb3fb044ead025ad70ad870a10..afeeb111e4cb9f1c3c11c436700cac22f8e5c6f9 100644
--- a/net/quic/test_tools/quic_stream_factory_peer.cc
+++ b/net/quic/test_tools/quic_stream_factory_peer.cc
@@ -7,11 +7,14 @@
#include <string>
#include <vector>
+#include "net/cert/x509_certificate.h"
#include "net/quic/chromium/quic_chromium_client_session.h"
#include "net/quic/chromium/quic_http_stream.h"
#include "net/quic/chromium/quic_stream_factory.h"
#include "net/quic/core/crypto/quic_crypto_client_config.h"
#include "net/quic/core/quic_clock.h"
+#include "net/test/cert_test_util.h"
+#include "net/test/test_data_directory.h"
using std::string;
using std::vector;
@@ -33,6 +36,12 @@ bool QuicStreamFactoryPeer::HasActiveSession(QuicStreamFactory* factory,
return factory->HasActiveSession(server_id);
}
+bool QuicStreamFactoryPeer::HasActiveCertVerifierJob(
+ QuicStreamFactory* factory,
+ const QuicServerId& server_id) {
+ return factory->HasActiveCertVerifierJob(server_id);
+}
+
QuicChromiumClientSession* QuicStreamFactoryPeer::GetActiveSession(
QuicStreamFactory* factory,
const QuicServerId& server_id) {
@@ -82,6 +91,25 @@ void QuicStreamFactoryPeer::SetDelayTcpRace(QuicStreamFactory* factory,
factory->delay_tcp_race_ = delay_tcp_race;
}
+bool QuicStreamFactoryPeer::GetRaceCertVerification(
+ QuicStreamFactory* factory) {
+ return factory->race_cert_verification_;
+}
+
+void QuicStreamFactoryPeer::SetRaceCertVerification(
+ QuicStreamFactory* factory,
+ bool race_cert_verification) {
+ factory->race_cert_verification_ = race_cert_verification;
+}
+
+QuicAsyncStatus QuicStreamFactoryPeer::StartCertVerifyJob(
+ QuicStreamFactory* factory,
+ const QuicServerId& server_id,
+ int cert_verify_flags,
+ const BoundNetLog& net_log) {
+ return factory->StartCertVerifyJob(server_id, cert_verify_flags, net_log);
+}
+
void QuicStreamFactoryPeer::SetYieldAfterPackets(QuicStreamFactory* factory,
int yield_after_packets) {
factory->yield_after_packets_ = yield_after_packets;
@@ -149,9 +177,15 @@ void QuicStreamFactoryPeer::CacheDummyServerConfig(
string server_config(reinterpret_cast<const char*>(&scfg), sizeof(scfg));
string source_address_token("test_source_address_token");
string signature("test_signature");
- string test_cert("test_cert");
+
vector<string> certs;
- certs.push_back(test_cert);
+ // Load a certificate that is valid for *.example.org
+ scoped_refptr<X509Certificate> cert(
+ ImportCertFromFile(GetTestCertsDirectory(), "wildcard.pem"));
+ DCHECK(cert);
+ std::string der_bytes;
+ DCHECK(X509Certificate::GetDEREncoded(cert->os_cert_handle(), &der_bytes));
+ certs.push_back(der_bytes);
QuicCryptoClientConfig* crypto_config = &factory->crypto_config_;
QuicCryptoClientConfig::CachedState* cached =
@@ -159,6 +193,7 @@ void QuicStreamFactoryPeer::CacheDummyServerConfig(
QuicClock clock;
cached->Initialize(server_config, source_address_token, certs, "", "",
signature, clock.WallNow());
+ DCHECK(!cached->certs().empty());
}
QuicClientPushPromiseIndex* QuicStreamFactoryPeer::GetPushPromiseIndex(
« no previous file with comments | « net/quic/test_tools/quic_stream_factory_peer.h ('k') | net/tools/quic/test_tools/quic_test_client.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698