// Copyright 2013 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "net/quic/quic_chromium_client_session_peer.h" #include #include "net/base/network_anonymization_key.h" #include "net/base/privacy_mode.h" #include "net/base/proxy_chain.h" #include "net/base/session_usage.h" #include "net/dns/public/secure_dns_policy.h" #include "net/quic/quic_session_key.h" #include "net/socket/socket_tag.h" #include "net/third_party/quiche/src/quiche/quic/core/quic_server_id.h" #include "net/traffic_annotation/network_traffic_annotation_test_helper.h" namespace net::test { // static void QuicChromiumClientSessionPeer::SetHostname( QuicChromiumClientSession* session, const std::string& hostname) { quic::QuicServerId server_id(hostname, session->session_key_.server_id().port()); session->session_key_ = QuicSessionKey( server_id, session->session_key_.privacy_mode(), session->session_key_.proxy_chain(), session->session_key_.session_usage(), session->session_key_.socket_tag(), session->session_key_.network_anonymization_key(), session->session_key_.secure_dns_policy(), session->session_key_.require_dns_https_alpn()); } // static QuicChromiumClientStream* QuicChromiumClientSessionPeer::CreateOutgoingStream( QuicChromiumClientSession* session) { return session->ShouldCreateOutgoingBidirectionalStream() ? session->CreateOutgoingReliableStreamImpl( TRAFFIC_ANNOTATION_FOR_TESTS) : nullptr; } // static bool QuicChromiumClientSessionPeer::GetSessionGoingAway( QuicChromiumClientSession* session) { return session->going_away_; } // static MigrationCause QuicChromiumClientSessionPeer::GetCurrentMigrationCause( QuicChromiumClientSession* session) { return session->current_migration_cause_; } } // namespace net::test