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

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

Issue 2478443002: Use ChannelMojo for remote security key channels. (Closed)
Patch Set: 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 side-by-side diff with in-line comments
Download patch
Index: remoting/host/security_key/fake_security_key_ipc_server.cc
diff --git a/remoting/host/security_key/fake_security_key_ipc_server.cc b/remoting/host/security_key/fake_security_key_ipc_server.cc
index 79ac5ed828609fe00f8ea56e3753ade2d3f08f55..3f6c77562b12ecd60cf5dd3437f4b09e7a557919 100644
--- a/remoting/host/security_key/fake_security_key_ipc_server.cc
+++ b/remoting/host/security_key/fake_security_key_ipc_server.cc
@@ -14,6 +14,9 @@
#include "ipc/ipc_channel.h"
#include "ipc/ipc_message.h"
#include "ipc/ipc_message_macros.h"
+#include "mojo/edk/embedder/embedder.h"
+#include "mojo/edk/embedder/named_platform_handle.h"
+#include "mojo/edk/embedder/named_platform_handle_utils.h"
#include "remoting/host/chromoting_messages.h"
#include "remoting/host/security_key/security_key_auth_handler.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -25,9 +28,11 @@ FakeSecurityKeyIpcServer::FakeSecurityKeyIpcServer(
ClientSessionDetails* client_session_details,
base::TimeDelta initial_connect_timeout,
const SecurityKeyAuthHandler::SendMessageCallback& send_message_callback,
+ const base::Closure& connect_callback,
const base::Closure& channel_closed_callback)
: connection_id_(connection_id),
send_message_callback_(send_message_callback),
+ connect_callback_(connect_callback),
channel_closed_callback_(channel_closed_callback),
weak_factory_(this) {}
@@ -58,16 +63,22 @@ bool FakeSecurityKeyIpcServer::OnMessageReceived(const IPC::Message& message) {
return handled;
}
-void FakeSecurityKeyIpcServer::OnChannelConnected(int32_t peer_pid) {}
-
-void FakeSecurityKeyIpcServer::OnChannelError() {}
-
-bool FakeSecurityKeyIpcServer::CreateChannel(const std::string& channel_name,
- base::TimeDelta request_timeout) {
- channel_name_ = channel_name;
+void FakeSecurityKeyIpcServer::OnChannelConnected(int32_t peer_pid) {
+ connect_callback_.Run();
+}
- ipc_channel_ =
- IPC::Channel::CreateNamedServer(IPC::ChannelHandle(channel_name_), this);
+bool FakeSecurityKeyIpcServer::CreateChannel(
+ const mojo::edk::NamedPlatformHandle& channel_handle,
+ base::TimeDelta request_timeout) {
+ mojo::edk::CreateServerHandleOptions options;
+#if defined(OS_WIN)
+ options.enforce_uniqueness = false;
+#endif
+ ipc_channel_ = IPC::Channel::CreateServer(
+ mojo::edk::ConnectToPeerProcess(
+ mojo::edk::CreateServerHandle(channel_handle, options))
+ .release(),
+ this);
EXPECT_NE(nullptr, ipc_channel_);
return ipc_channel_->Connect();
}
@@ -101,11 +112,12 @@ std::unique_ptr<SecurityKeyIpcServer> FakeSecurityKeyIpcServerFactory::Create(
ClientSessionDetails* client_session_details,
base::TimeDelta initial_connect_timeout,
const SecurityKeyAuthHandler::SendMessageCallback& send_message_callback,
+ const base::Closure& connect_callback,
const base::Closure& done_callback) {
std::unique_ptr<FakeSecurityKeyIpcServer> fake_ipc_server(
- new FakeSecurityKeyIpcServer(connection_id, client_session_details,
- initial_connect_timeout,
- send_message_callback, done_callback));
+ new FakeSecurityKeyIpcServer(
dcheng 2016/11/08 07:54:04 Optional nit: consider auto fake_ipc_server = base
Sam McNally 2016/11/08 08:37:22 Done.
+ connection_id, client_session_details, initial_connect_timeout,
+ send_message_callback, connect_callback, done_callback));
ipc_server_map_[connection_id] = fake_ipc_server->AsWeakPtr();

Powered by Google App Engine
This is Rietveld 408576698