Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore: cherry-pick 91dd4f79ab5b from chromium (#31682)
* chore: cherry-pick 91dd4f79ab5b from chromium * chore: update patches Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
- Loading branch information
1 parent
2dd1034
commit 4aa6b8d
Showing
2 changed files
with
49 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 | ||
From: Ken Rockot <rockot@google.com> | ||
Date: Mon, 25 Oct 2021 18:22:50 +0000 | ||
Subject: Validate INTRODUCE source node | ||
|
||
INTRODUCE NodeChannel messages should only be acknowledged when coming | ||
from the broker process. | ||
|
||
(cherry picked from commit 6e74f7b5cb2f48b17403f0431f3e4f3a2e716265) | ||
|
||
Fixed: 1252858 | ||
Change-Id: I2dff6d5cab102ce744ad2ad66a9f24b4202cbea8 | ||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3193798 | ||
Reviewed-by: Alex Gough <ajgo@chromium.org> | ||
Commit-Queue: Ken Rockot <rockot@google.com> | ||
Cr-Original-Commit-Position: refs/heads/main@{#926430} | ||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3229034 | ||
Auto-Submit: Ken Rockot <rockot@google.com> | ||
Reviewed-by: Oksana Zhuravlova <oksamyt@chromium.org> | ||
Commit-Queue: Oksana Zhuravlova <oksamyt@chromium.org> | ||
Cr-Commit-Position: refs/branch-heads/4638@{#964} | ||
Cr-Branched-From: 159257cab5585bc8421abf347984bb32fdfe9eb9-refs/heads/main@{#920003} | ||
|
||
diff --git a/mojo/core/node_controller.cc b/mojo/core/node_controller.cc | ||
index 475b5cb2d0a301badcd6fb90b5ad90c47e4b5cc4..b8251bf0780f2d9c0346d480839caeab36082721 100644 | ||
--- a/mojo/core/node_controller.cc | ||
+++ b/mojo/core/node_controller.cc | ||
@@ -21,6 +21,7 @@ | ||
#include "mojo/core/broker.h" | ||
#include "mojo/core/broker_host.h" | ||
#include "mojo/core/configuration.h" | ||
+#include "mojo/core/ports/name.h" | ||
#include "mojo/core/request_context.h" | ||
#include "mojo/core/user_message_impl.h" | ||
#include "mojo/public/cpp/platform/named_platform_channel.h" | ||
@@ -1129,6 +1130,12 @@ void NodeController::OnIntroduce(const ports::NodeName& from_node, | ||
const uint64_t remote_capabilities) { | ||
DCHECK(io_task_runner_->RunsTasksInCurrentSequence()); | ||
|
||
+ if (broker_name_ == ports::kInvalidNodeName || from_node != broker_name_) { | ||
+ DVLOG(1) << "Ignoring introduction from non-broker process."; | ||
+ DropPeer(from_node, nullptr); | ||
+ return; | ||
+ } | ||
+ | ||
if (!channel_handle.is_valid()) { | ||
node_->LostConnectionToNode(name); | ||
|