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

Unified Diff: extensions/browser/api/cast_channel/cast_socket.cc

Issue 2709523008: [Cast Channel] Add support for nonce challenge to Cast channel authentication. (Closed)
Patch Set: Created 3 years, 10 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: extensions/browser/api/cast_channel/cast_socket.cc
diff --git a/extensions/browser/api/cast_channel/cast_socket.cc b/extensions/browser/api/cast_channel/cast_socket.cc
index 3bb675cf3fd9f74b4424d13044a8cf14ba0d7d99..cf320874f655026146a79138b7f0b874b7a5665c 100644
--- a/extensions/browser/api/cast_channel/cast_socket.cc
+++ b/extensions/browser/api/cast_channel/cast_socket.cc
@@ -113,7 +113,8 @@ CastSocketImpl::CastSocketImpl(const std::string& owner_extension_id,
const base::TimeDelta& timeout,
bool keep_alive,
const scoped_refptr<Logger>& logger,
- uint64_t device_capabilities)
+ uint64_t device_capabilities,
+ const std::string& nonce)
: CastSocket(owner_extension_id),
owner_extension_id_(owner_extension_id),
channel_id_(0),
@@ -130,7 +131,8 @@ CastSocketImpl::CastSocketImpl(const std::string& owner_extension_id,
connect_state_(proto::CONN_STATE_START_CONNECT),
error_state_(CHANNEL_ERROR_NONE),
ready_state_(READY_STATE_NONE),
- auth_delegate_(nullptr) {
+ auth_delegate_(nullptr),
+ nonce_(nonce) {
DCHECK(net_log_);
net_log_source_.type = net::NetLogSourceType::SOCKET;
net_log_source_.id = net_log_->NextID();
@@ -235,7 +237,7 @@ bool CastSocketImpl::VerifyChannelPolicy(const AuthResult& result) {
bool CastSocketImpl::VerifyChallengeReply() {
DCHECK(peer_cert_);
AuthResult result =
- AuthenticateChallengeReply(*challenge_reply_, *peer_cert_);
+ AuthenticateChallengeReply(*challenge_reply_, *peer_cert_, nonce_);
logger_->LogSocketChallengeReplyEvent(channel_id_, result);
if (result.success()) {
VLOG(1) << result.error_message;
@@ -450,7 +452,7 @@ int CastSocketImpl::DoAuthChallengeSend() {
SetConnectState(proto::CONN_STATE_AUTH_CHALLENGE_SEND_COMPLETE);
CastMessage challenge_message;
- CreateAuthChallengeMessage(&challenge_message);
+ CreateAuthChallengeMessage(&challenge_message, nonce_);
VLOG_WITH_CONNECTION(1) << "Sending challenge: "
<< CastMessageToString(challenge_message);

Powered by Google App Engine
This is Rietveld 408576698