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

Unified Diff: remoting/host/security_key/fake_remote_security_key_ipc_server.cc

Issue 2167473003: Revert of Renaming Gnubby and RemoteSecurityKey files/classes/members (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 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
Index: remoting/host/security_key/fake_remote_security_key_ipc_server.cc
diff --git a/remoting/host/security_key/fake_remote_security_key_ipc_server.cc b/remoting/host/security_key/fake_remote_security_key_ipc_server.cc
new file mode 100644
index 0000000000000000000000000000000000000000..e7178bd743500f5513d92e3395fc7c3a6144f816
--- /dev/null
+++ b/remoting/host/security_key/fake_remote_security_key_ipc_server.cc
@@ -0,0 +1,127 @@
+// Copyright 2016 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "remoting/host/security_key/fake_remote_security_key_ipc_server.h"
+
+#include <cstdint>
+#include <memory>
+#include <string>
+
+#include "base/callback.h"
+#include "base/macros.h"
+#include "base/memory/ptr_util.h"
+#include "ipc/ipc_channel.h"
+#include "ipc/ipc_message.h"
+#include "ipc/ipc_message_macros.h"
+#include "remoting/host/chromoting_messages.h"
+#include "remoting/host/security_key/gnubby_auth_handler.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+namespace remoting {
+
+FakeRemoteSecurityKeyIpcServer::FakeRemoteSecurityKeyIpcServer(
+ int connection_id,
+ uint32_t peer_session_id,
+ base::TimeDelta initial_connect_timeout,
+ const GnubbyAuthHandler::SendMessageCallback& send_message_callback,
+ const base::Closure& channel_closed_callback)
+ : connection_id_(connection_id),
+ send_message_callback_(send_message_callback),
+ channel_closed_callback_(channel_closed_callback),
+ weak_factory_(this) {}
+
+FakeRemoteSecurityKeyIpcServer::~FakeRemoteSecurityKeyIpcServer() {}
+
+void FakeRemoteSecurityKeyIpcServer::SendRequest(
+ const std::string& message_data) {
+ send_message_callback_.Run(connection_id_, message_data);
+}
+
+void FakeRemoteSecurityKeyIpcServer::CloseChannel() {
+ ipc_channel_.reset();
+ channel_closed_callback_.Run();
+}
+
+base::WeakPtr<FakeRemoteSecurityKeyIpcServer>
+FakeRemoteSecurityKeyIpcServer::AsWeakPtr() {
+ return weak_factory_.GetWeakPtr();
+}
+
+bool FakeRemoteSecurityKeyIpcServer::OnMessageReceived(
+ const IPC::Message& message) {
+ bool handled = true;
+ IPC_BEGIN_MESSAGE_MAP(FakeRemoteSecurityKeyIpcServer, message)
+ IPC_MESSAGE_HANDLER(ChromotingRemoteSecurityKeyToNetworkMsg_Request,
+ SendRequest)
+ IPC_MESSAGE_UNHANDLED(handled = false)
+ IPC_END_MESSAGE_MAP()
+
+ EXPECT_TRUE(handled);
+ return handled;
+}
+
+void FakeRemoteSecurityKeyIpcServer::OnChannelConnected(int32_t peer_pid) {}
+
+void FakeRemoteSecurityKeyIpcServer::OnChannelError() {}
+
+bool FakeRemoteSecurityKeyIpcServer::CreateChannel(
+ const std::string& channel_name,
+ base::TimeDelta request_timeout) {
+ channel_name_ = channel_name;
+
+ ipc_channel_ =
+ IPC::Channel::CreateNamedServer(IPC::ChannelHandle(channel_name_), this);
+ EXPECT_NE(nullptr, ipc_channel_);
+ return ipc_channel_->Connect();
+}
+
+bool FakeRemoteSecurityKeyIpcServer::SendResponse(
+ const std::string& message_data) {
+ last_message_received_ = message_data;
+
+ // This class works in two modes: one in which the test wants the IPC channel
+ // to be created and used for notification and the second mode where the test
+ // wants to notified of a response via a callback. If a callback is set then
+ // we use it, otherwise we will use the IPC connection to send a message.
+ if (!send_response_callback_.is_null()) {
+ send_response_callback_.Run();
+ return true;
+ }
+
+ return ipc_channel_->Send(
+ new ChromotingNetworkToRemoteSecurityKeyMsg_Response(message_data));
+}
+
+FakeRemoteSecurityKeyIpcServerFactory::FakeRemoteSecurityKeyIpcServerFactory() {
+ RemoteSecurityKeyIpcServer::SetFactoryForTest(this);
+}
+
+FakeRemoteSecurityKeyIpcServerFactory::
+ ~FakeRemoteSecurityKeyIpcServerFactory() {
+ RemoteSecurityKeyIpcServer::SetFactoryForTest(nullptr);
+}
+
+std::unique_ptr<RemoteSecurityKeyIpcServer>
+FakeRemoteSecurityKeyIpcServerFactory::Create(
+ int connection_id,
+ uint32_t peer_session_id,
+ base::TimeDelta initial_connect_timeout,
+ const GnubbyAuthHandler::SendMessageCallback& send_message_callback,
+ const base::Closure& done_callback) {
+ std::unique_ptr<FakeRemoteSecurityKeyIpcServer> fake_ipc_server(
+ new FakeRemoteSecurityKeyIpcServer(connection_id, peer_session_id,
+ initial_connect_timeout,
+ send_message_callback, done_callback));
+
+ ipc_server_map_[connection_id] = fake_ipc_server->AsWeakPtr();
+
+ return base::WrapUnique(fake_ipc_server.release());
+}
+
+base::WeakPtr<FakeRemoteSecurityKeyIpcServer>
+FakeRemoteSecurityKeyIpcServerFactory::GetIpcServerObject(int connection_id) {
+ return ipc_server_map_[connection_id];
+}
+
+} // namespace remoting

Powered by Google App Engine
This is Rietveld 408576698