Commit f69b019f authored by sergeyu's avatar sergeyu Committed by Commit bot

Remove legacy version of the control channel protocol.

All current versions of host and client support capabilities, we
no longer need to keep support for older versions.

Review URL: https://codereview.chromium.org/565263006

Cr-Commit-Position: refs/heads/master@{#294752}
parent 3f43ba63
...@@ -151,27 +151,17 @@ void ChromotingClient::OnAuthenticated() { ...@@ -151,27 +151,17 @@ void ChromotingClient::OnAuthenticated() {
if (connection_.config().is_audio_enabled()) if (connection_.config().is_audio_enabled())
audio_decode_scheduler_->Initialize(connection_.config()); audio_decode_scheduler_->Initialize(connection_.config());
// Do not negotiate capabilities with the host if the host does not support
// them.
if (!connection_.config().SupportsCapabilities()) {
VLOG(1) << "The host does not support any capabilities.";
host_capabilities_received_ = true;
user_interface_->SetCapabilities(host_capabilities_);
}
} }
void ChromotingClient::OnChannelsConnected() { void ChromotingClient::OnChannelsConnected() {
DCHECK(task_runner_->BelongsToCurrentThread()); DCHECK(task_runner_->BelongsToCurrentThread());
// Negotiate capabilities with the host. // Negotiate capabilities with the host.
if (connection_.config().SupportsCapabilities()) { VLOG(1) << "Client capabilities: " << local_capabilities_;
VLOG(1) << "Client capabilities: " << local_capabilities_;
protocol::Capabilities capabilities; protocol::Capabilities capabilities;
capabilities.set_capabilities(local_capabilities_); capabilities.set_capabilities(local_capabilities_);
connection_.host_stub()->SetCapabilities(capabilities); connection_.host_stub()->SetCapabilities(capabilities);
}
} }
} // namespace remoting } // namespace remoting
...@@ -176,13 +176,6 @@ void ClientSession::SetCapabilities( ...@@ -176,13 +176,6 @@ void ClientSession::SetCapabilities(
const protocol::Capabilities& capabilities) { const protocol::Capabilities& capabilities) {
DCHECK(CalledOnValidThread()); DCHECK(CalledOnValidThread());
// The client should not send protocol::Capabilities if it is not supported by
// the config channel.
if (!connection_->session()->config().SupportsCapabilities()) {
LOG(ERROR) << "Unexpected protocol::Capabilities has been received.";
return;
}
// Ignore all the messages but the 1st one. // Ignore all the messages but the 1st one.
if (client_capabilities_) { if (client_capabilities_) {
LOG(WARNING) << "protocol::Capabilities has been received already."; LOG(WARNING) << "protocol::Capabilities has been received already.";
...@@ -288,16 +281,10 @@ void ClientSession::OnConnectionAuthenticated( ...@@ -288,16 +281,10 @@ void ClientSession::OnConnectionAuthenticated(
} }
// Collate the set of capabilities to offer the client, if it supports them. // Collate the set of capabilities to offer the client, if it supports them.
if (connection_->session()->config().SupportsCapabilities()) { host_capabilities_ = desktop_environment_->GetCapabilities();
host_capabilities_ = desktop_environment_->GetCapabilities(); if (!host_capabilities_.empty())
if (!host_capabilities_.empty()) { host_capabilities_.append(" ");
host_capabilities_.append(" "); host_capabilities_.append(extension_manager_->GetCapabilities());
}
host_capabilities_.append(extension_manager_->GetCapabilities());
} else {
VLOG(1) << "The client does not support any capabilities.";
desktop_environment_->SetCapabilities(std::string());
}
// Create the object that controls the screen resolution. // Create the object that controls the screen resolution.
screen_controls_ = desktop_environment_->CreateScreenControls(); screen_controls_ = desktop_environment_->CreateScreenControls();
...@@ -332,13 +319,11 @@ void ClientSession::OnConnectionChannelsConnected( ...@@ -332,13 +319,11 @@ void ClientSession::OnConnectionChannelsConnected(
DCHECK_EQ(connection_.get(), connection); DCHECK_EQ(connection_.get(), connection);
// Negotiate capabilities with the client. // Negotiate capabilities with the client.
if (connection_->session()->config().SupportsCapabilities()) { VLOG(1) << "Host capabilities: " << host_capabilities_;
VLOG(1) << "Host capabilities: " << host_capabilities_;
protocol::Capabilities capabilities; protocol::Capabilities capabilities;
capabilities.set_capabilities(host_capabilities_); capabilities.set_capabilities(host_capabilities_);
connection_->client_stub()->SetCapabilities(capabilities); connection_->client_stub()->SetCapabilities(capabilities);
}
// Start the event executor. // Start the event executor.
input_injector_->Start(CreateClipboardProxy()); input_injector_->Start(CreateClipboardProxy());
......
...@@ -10,10 +10,7 @@ namespace remoting { ...@@ -10,10 +10,7 @@ namespace remoting {
namespace protocol { namespace protocol {
const int kDefaultStreamVersion = 2; const int kDefaultStreamVersion = 2;
// The control channel version that supports the "capabilities" message.
const int kControlStreamVersion = 3; const int kControlStreamVersion = 3;
const int kControlStreamVersionNoCapabilities = kDefaultStreamVersion;
ChannelConfig ChannelConfig::None() { ChannelConfig ChannelConfig::None() {
return ChannelConfig(); return ChannelConfig();
...@@ -41,10 +38,6 @@ bool ChannelConfig::operator==(const ChannelConfig& b) const { ...@@ -41,10 +38,6 @@ bool ChannelConfig::operator==(const ChannelConfig& b) const {
SessionConfig::SessionConfig() { SessionConfig::SessionConfig() {
} }
bool SessionConfig::SupportsCapabilities() const {
return control_config_.version >= kControlStreamVersion;
}
// static // static
SessionConfig SessionConfig::ForTest() { SessionConfig SessionConfig::ForTest() {
SessionConfig result; SessionConfig result;
...@@ -180,10 +173,6 @@ scoped_ptr<CandidateSessionConfig> CandidateSessionConfig::CreateDefault() { ...@@ -180,10 +173,6 @@ scoped_ptr<CandidateSessionConfig> CandidateSessionConfig::CreateDefault() {
ChannelConfig(ChannelConfig::TRANSPORT_MUX_STREAM, ChannelConfig(ChannelConfig::TRANSPORT_MUX_STREAM,
kControlStreamVersion, kControlStreamVersion,
ChannelConfig::CODEC_UNDEFINED)); ChannelConfig::CODEC_UNDEFINED));
result->mutable_control_configs()->push_back(
ChannelConfig(ChannelConfig::TRANSPORT_MUX_STREAM,
kControlStreamVersionNoCapabilities,
ChannelConfig::CODEC_UNDEFINED));
// Event channel. // Event channel.
result->mutable_event_configs()->push_back( result->mutable_event_configs()->push_back(
......
...@@ -83,9 +83,6 @@ class SessionConfig { ...@@ -83,9 +83,6 @@ class SessionConfig {
return audio_config_.transport != ChannelConfig::TRANSPORT_NONE; return audio_config_.transport != ChannelConfig::TRANSPORT_NONE;
} }
// Returns true if the control channel supports capabilities.
bool SupportsCapabilities() const;
// Returns a suitable session configuration for use in tests. // Returns a suitable session configuration for use in tests.
static SessionConfig ForTest(); static SessionConfig ForTest();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment