Index: device/u2f/u2f_hid_device.cc |
diff --git a/device/u2f/u2f_hid_device.cc b/device/u2f/u2f_hid_device.cc |
index a8d8bd409fcf1bfc9a0b7c66aed30364fd9885ad..7bebafb1a458dfa4eeb6eba6235e9b95d408cfdc 100644 |
--- a/device/u2f/u2f_hid_device.cc |
+++ b/device/u2f/u2f_hid_device.cc |
@@ -52,9 +52,9 @@ void U2fHidDevice::Transition(std::unique_ptr<U2fApduCommand> command, |
break; |
case State::IDLE: { |
state_ = State::BUSY; |
- scoped_refptr<U2fMessage> msg = U2fMessage::Create( |
+ std::unique_ptr<U2fMessage> msg = U2fMessage::Create( |
channel_id_, U2fMessage::Type::CMD_MSG, command->GetEncodedCommand()); |
- WriteMessage(msg, true, |
+ WriteMessage(std::move(msg), true, |
base::Bind(&U2fHidDevice::MessageReceived, |
weak_factory_.GetWeakPtr(), callback)); |
break; |
@@ -100,11 +100,11 @@ void U2fHidDevice::AllocateChannel(std::unique_ptr<U2fApduCommand> command, |
// Send random nonce to device to verify received message |
std::vector<uint8_t> nonce(8); |
crypto::RandBytes(nonce.data(), nonce.size()); |
- scoped_refptr<U2fMessage> message = |
+ std::unique_ptr<U2fMessage> message = |
U2fMessage::Create(channel_id_, U2fMessage::Type::CMD_INIT, nonce); |
WriteMessage( |
- message, true, |
+ std::move(message), true, |
base::Bind(&U2fHidDevice::OnAllocateChannel, weak_factory_.GetWeakPtr(), |
nonce, base::Passed(&command), callback)); |
} |
@@ -113,7 +113,7 @@ void U2fHidDevice::OnAllocateChannel(std::vector<uint8_t> nonce, |
std::unique_ptr<U2fApduCommand> command, |
const DeviceCallback& callback, |
bool success, |
- scoped_refptr<U2fMessage> message) { |
+ std::unique_ptr<U2fMessage> message) { |
if (!success || !message) { |
state_ = State::DEVICE_ERROR; |
Transition(nullptr, callback); |
@@ -153,7 +153,7 @@ void U2fHidDevice::OnAllocateChannel(std::vector<uint8_t> nonce, |
Transition(std::move(command), callback); |
} |
-void U2fHidDevice::WriteMessage(scoped_refptr<U2fMessage> message, |
+void U2fHidDevice::WriteMessage(std::unique_ptr<U2fMessage> message, |
bool response_expected, |
U2fHidMessageCallback callback) { |
if (!connection_ || !message || message->NumPackets() == 0) { |
@@ -166,15 +166,15 @@ void U2fHidDevice::WriteMessage(scoped_refptr<U2fMessage> message, |
connection_->Write( |
buffer, buffer->size(), |
base::Bind(&U2fHidDevice::PacketWritten, weak_factory_.GetWeakPtr(), |
- message, true, base::Passed(&callback))); |
+ base::Passed(&message), true, base::Passed(&callback))); |
} |
-void U2fHidDevice::PacketWritten(scoped_refptr<U2fMessage> message, |
+void U2fHidDevice::PacketWritten(std::unique_ptr<U2fMessage> message, |
bool response_expected, |
U2fHidMessageCallback callback, |
bool success) { |
if (success && message->NumPackets() > 0) { |
- WriteMessage(message, response_expected, std::move(callback)); |
+ WriteMessage(std::move(message), response_expected, std::move(callback)); |
} else if (success && response_expected) { |
ReadMessage(std::move(callback)); |
} else { |
@@ -204,7 +204,7 @@ void U2fHidDevice::OnRead(U2fHidMessageCallback callback, |
scoped_refptr<net::IOBufferWithSize> buffer(new net::IOBufferWithSize(size)); |
memcpy(buffer->data(), buf->data(), size); |
- scoped_refptr<U2fMessage> read_message = |
+ std::unique_ptr<U2fMessage> read_message = |
U2fMessage::CreateFromSerializedData(buffer); |
if (!read_message) { |
@@ -221,17 +221,17 @@ void U2fHidDevice::OnRead(U2fHidMessageCallback callback, |
} |
if (read_message->MessageComplete()) { |
- std::move(callback).Run(success, read_message); |
+ std::move(callback).Run(success, std::move(read_message)); |
return; |
} |
// Continue reading additional packets |
- connection_->Read(base::Bind(&U2fHidDevice::OnReadContinuation, |
- weak_factory_.GetWeakPtr(), read_message, |
- base::Passed(&callback))); |
+ connection_->Read( |
+ base::Bind(&U2fHidDevice::OnReadContinuation, weak_factory_.GetWeakPtr(), |
+ base::Passed(&read_message), base::Passed(&callback))); |
} |
-void U2fHidDevice::OnReadContinuation(scoped_refptr<U2fMessage> message, |
+void U2fHidDevice::OnReadContinuation(std::unique_ptr<U2fMessage> message, |
U2fHidMessageCallback callback, |
bool success, |
scoped_refptr<net::IOBuffer> buf, |
@@ -245,17 +245,17 @@ void U2fHidDevice::OnReadContinuation(scoped_refptr<U2fMessage> message, |
memcpy(buffer->data(), buf->data(), size); |
message->AddContinuationPacket(buffer); |
if (message->MessageComplete()) { |
- std::move(callback).Run(success, message); |
+ std::move(callback).Run(success, std::move(message)); |
return; |
} |
- connection_->Read(base::Bind(&U2fHidDevice::OnReadContinuation, |
- weak_factory_.GetWeakPtr(), message, |
- base::Passed(&callback))); |
+ connection_->Read( |
+ base::Bind(&U2fHidDevice::OnReadContinuation, weak_factory_.GetWeakPtr(), |
+ base::Passed(&message), base::Passed(&callback))); |
} |
void U2fHidDevice::MessageReceived(const DeviceCallback& callback, |
bool success, |
- scoped_refptr<U2fMessage> message) { |
+ std::unique_ptr<U2fMessage> message) { |
if (!success) { |
state_ = State::DEVICE_ERROR; |
Transition(nullptr, callback); |
@@ -286,16 +286,16 @@ void U2fHidDevice::TryWink(const WinkCallback& callback) { |
return; |
} |
- scoped_refptr<U2fMessage> wink_message = device::U2fMessage::Create( |
+ std::unique_ptr<U2fMessage> wink_message = U2fMessage::Create( |
channel_id_, U2fMessage::Type::CMD_WINK, std::vector<uint8_t>()); |
WriteMessage( |
- wink_message, true, |
+ std::move(wink_message), true, |
base::Bind(&U2fHidDevice::OnWink, weak_factory_.GetWeakPtr(), callback)); |
} |
void U2fHidDevice::OnWink(const WinkCallback& callback, |
bool success, |
- scoped_refptr<U2fMessage> response) { |
+ std::unique_ptr<U2fMessage> response) { |
callback.Run(); |
} |