New issue
Advanced search Search tips

Issue 834719 link

Starred by 5 users

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Chrome , Mac
Pri: 2
Type: Bug-Regression

Blocked on:
issue 836042



Sign in to add a comment

Load Media Router Component Extension - Running when disabled

Reported by dmcg...@janestreet.com, Apr 19 2018

Issue description

UserAgent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.117 Safari/537.36

Steps to reproduce the problem:
1) Use ADMX to disable the Media Router Component.
2) Disable in chrome://flags/#Load-Media-Router-Component-Extension
3) Check DWORD == 0 for HKLM:\Software\Policies\Google\Chrome\EnableMediaRouting

What is the expected behavior?
This should not be happening.

What went wrong?
Despite Load Media Router Component Extension being disabled in chrome://flags/#Load-Media-Router-Component-Extension and via GPO (reg: HKLM:\Software\Policies\Google\Chrome\EnableMediaRouting - DWORD 0) - we are still seeing Multicast packets on 1900 from USER-AGENT: Google Chrome/66.0.3359.117 Windows - ST: urn:dial-multiscreen-org:service:dial:1\r\n

This generating a large amount of unnecessary multicast packets in our environment.

Did this work before? Yes 

Chrome version: 66.0.3359.117  Channel: stable
OS Version: 10.0
Flash Version:
 
Components: Internals>Cast>Streaming
Owner: imch...@chromium.org
Sending over to Cast folks.

I'll note that what the customer really wants to set is EnableMediaRouter, not "EnableMediaRouting" (http://www.chromium.org/administrators/policy-list-3#EnableMediaRouter)

I don't know if disabling the component extension is supposed to stop multicast traffic or not.


Thanks for the update. Looking at previous threads, other people have said doing configuring EnableMediaRouter to Disabled (configured in GPO) should stop the multicast packets. I look forward to a response from the Cast engineers

Comment 3 by mfo...@chromium.org, Apr 20 2018

Components: -Internals>Cast>Streaming Internals>Cast>Providers
Owner: taku...@chromium.org
Status: Assigned (was: Unconfirmed)
Takumi - from debugging locally I see that MediaRouterUIServiceFactory eagerly instantiates MediaRouterUIService, whcih causes MediaRouter /  in-browser discovery to start. Do you know why eager instantiation is used? Is it due to the cast icon?
Blockedon: 836042
Right, the eager instantiation is for showing the icon. Since ServiceIsCreatedWithBrowserContext() doesn't have access to the BrowserContext, I'm thinking of returning a nullptr in MRUIServiceFactory::BuildServiceInstanceFor() if the feature is disabled. Does that sound good to you?

I also filed a separate bug for MediaRemoter which also uses MR even when it is disabled.
I think that should be fine, we will need to make sure code that depends on it either runs only when MR is enabled, or handles the nullptr case correctly. I think it would be ideal to not instantiate eagerly, though I think we have looked into this already and there's a reason for doing so.
Project Member

Comment 8 by bugdroid1@chromium.org, Apr 25 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/be5bdeac6a5587e7053d9a5830d41b51cdc9b9f2

commit be5bdeac6a5587e7053d9a5830d41b51cdc9b9f2
Author: Takumi Fujimoto <takumif@chromium.org>
Date: Wed Apr 25 22:09:00 2018

Do not create MediaRouterUIService when Media Router is disabled

MRUIService is instantiated at startup to show the Cast toolbar icon.
This CL prevents that if the Media Router feature is disabled.

Bug:  834719 
Change-Id: I02fdecb1ca50940c2311d6491698764bc6275ec1
Reviewed-on: https://chromium-review.googlesource.com/1026975
Reviewed-by: Derek Cheng <imcheng@chromium.org>
Commit-Queue: Takumi Fujimoto <takumif@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553783}
[modify] https://crrev.com/be5bdeac6a5587e7053d9a5830d41b51cdc9b9f2/chrome/browser/ui/webui/media_router/media_router_ui_service_factory.cc
[modify] https://crrev.com/be5bdeac6a5587e7053d9a5830d41b51cdc9b9f2/chrome/browser/ui/webui/media_router/media_router_ui_service_factory.h
[modify] https://crrev.com/be5bdeac6a5587e7053d9a5830d41b51cdc9b9f2/chrome/browser/ui/webui/media_router/media_router_ui_service_factory_unittest.cc

Thank you for the good work on this, is it possible to test an early version of the commit or do we have to wait for public release, if so any idea how long that will likely be?
dmcgurk@: The change will be in a Canary release within a day or two.
https://www.google.com/chrome/browser/canary.html

It will be at least a month before the change is included in a stable release.
Labels: Merge-Request-67
Requesting a merge of c#8 into M67.
Before we approve merge to M67, please answer followings:
* Is this M67 regression? Is it critical?
* Is the change well baked/verified in Canary, having enough automation tests coverage and safe to merge to M67?
* Any other important details to justify the merge.

Please note M67 is already in Beta, so merge bar is very high. Thank you.
Project Member

Comment 13 by sheriffbot@chromium.org, Apr 26 2018

Labels: -Merge-Request-67 Merge-Review-67 Hotlist-Merge-Review
This bug requires manual review: M67 has already been promoted to the beta branch, so this requires manual review
Please contact the milestone owner if you have questions.
Owners: cmasso@(Android), cmasso@(iOS), kbleicher@(ChromeOS), govind@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
The regression is in M66. The Cast feature may send network requests despite being disabled by an admin policy (the feature itself would still be nonfunctional), so we'd like to fix that for M67. The Media Router feature is covered by various automated and manual tests.

I'll wait for a few more days to verify it in Canary.
NextAction: 2018-04-30
Pls update the bug with canary result on Monday morning (04/30).

Is Media Router feature behind finch? Can it be disabled easily from server side if something goes wrong?
The NextAction date has arrived: 2018-04-30
Labels: OS-Chrome OS-Linux OS-Mac
NextAction: ----
I've verified in macOS Canary with the admin policy enabled and disabled. I also didn't see a relevant crash in the top 50 crashes for a recent Canary build in crash/.
Labels: -Merge-Review-67 Merge-Approved-67
Approving merge to M67 branch 3396 based on comment #17. Please merge ASAP so we can pick it up for this week M67 Beta release. Thank you.
Project Member

Comment 19 by bugdroid1@chromium.org, Apr 30 2018

Labels: -merge-approved-67 merge-merged-3396
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6d3f0144ab6c4110eb23636b35e70539b8124e86

commit 6d3f0144ab6c4110eb23636b35e70539b8124e86
Author: Takumi Fujimoto <takumif@chromium.org>
Date: Mon Apr 30 18:40:17 2018

Do not create MediaRouterUIService when Media Router is disabled

MRUIService is instantiated at startup to show the Cast toolbar icon.
This CL prevents that if the Media Router feature is disabled.

Bug:  834719 
Change-Id: I02fdecb1ca50940c2311d6491698764bc6275ec1
Reviewed-on: https://chromium-review.googlesource.com/1026975
Reviewed-by: Derek Cheng <imcheng@chromium.org>
Commit-Queue: Takumi Fujimoto <takumif@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#553783}(cherry picked from commit be5bdeac6a5587e7053d9a5830d41b51cdc9b9f2)
Reviewed-on: https://chromium-review.googlesource.com/1035762
Reviewed-by: Takumi Fujimoto <takumif@chromium.org>
Cr-Commit-Position: refs/branch-heads/3396@{#389}
Cr-Branched-From: 9ef2aa869bc7bc0c089e255d698cca6e47d6b038-refs/heads/master@{#550428}
[modify] https://crrev.com/6d3f0144ab6c4110eb23636b35e70539b8124e86/chrome/browser/ui/webui/media_router/media_router_ui_service_factory.cc
[modify] https://crrev.com/6d3f0144ab6c4110eb23636b35e70539b8124e86/chrome/browser/ui/webui/media_router/media_router_ui_service_factory.h
[modify] https://crrev.com/6d3f0144ab6c4110eb23636b35e70539b8124e86/chrome/browser/ui/webui/media_router/media_router_ui_service_factory_unittest.cc

Status: Fixed (was: Assigned)
Labels: cros-verified
Verified for ChromeOS M67.0.3396.41 10575.32.0 dev paine.
Project Member

Comment 22 by bugdroid1@chromium.org, Jun 20 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0f65bbe8d9c19cc4e9e569e75cb785492a1cec80

commit 0f65bbe8d9c19cc4e9e569e75cb785492a1cec80
Author: Michał Pichliński <mpichlinski@opera.com>
Date: Wed Jun 20 04:29:06 2018

Do not create MediaRouterActionController when Media Router is disabled.

Following change: https://chromium-review.googlesource.com/1026975 disallows
having a control of Chromecast preference in settings, because calling Cast...
after enabling Chromecast preference in runtime without a restart causes a
crash due to missing MediaRouterUIService.

Instead of not creating MediaRouterUIService, do not create
MediaRouterActionController in this service when Media Router is disabled.

Bug:  834719 
Change-Id: I218523d631d9050ff27e69915ba098fe21907e25
Reviewed-on: https://chromium-review.googlesource.com/1067817
Commit-Queue: Michal Pichlinski <mpichlinski@opera.com>
Reviewed-by: Derek Cheng <imcheng@chromium.org>
Reviewed-by: Takumi Fujimoto <takumif@chromium.org>
Cr-Commit-Position: refs/heads/master@{#568726}
[modify] https://crrev.com/0f65bbe8d9c19cc4e9e569e75cb785492a1cec80/chrome/browser/ui/media_router/media_router_dialog_controller_impl_base.cc
[modify] https://crrev.com/0f65bbe8d9c19cc4e9e569e75cb785492a1cec80/chrome/browser/ui/media_router/media_router_dialog_controller_impl_base.h
[modify] https://crrev.com/0f65bbe8d9c19cc4e9e569e75cb785492a1cec80/chrome/browser/ui/webui/media_router/media_router_ui_service.cc
[modify] https://crrev.com/0f65bbe8d9c19cc4e9e569e75cb785492a1cec80/chrome/browser/ui/webui/media_router/media_router_ui_service.h
[modify] https://crrev.com/0f65bbe8d9c19cc4e9e569e75cb785492a1cec80/chrome/browser/ui/webui/media_router/media_router_ui_service_factory.cc
[modify] https://crrev.com/0f65bbe8d9c19cc4e9e569e75cb785492a1cec80/chrome/browser/ui/webui/media_router/media_router_ui_service_factory.h
[modify] https://crrev.com/0f65bbe8d9c19cc4e9e569e75cb785492a1cec80/chrome/browser/ui/webui/media_router/media_router_ui_service_factory_unittest.cc
[modify] https://crrev.com/0f65bbe8d9c19cc4e9e569e75cb785492a1cec80/chrome/test/media_router/media_router_integration_browsertest.cc
[modify] https://crrev.com/0f65bbe8d9c19cc4e9e569e75cb785492a1cec80/chrome/test/media_router/media_router_integration_browsertest.h
[modify] https://crrev.com/0f65bbe8d9c19cc4e9e569e75cb785492a1cec80/chrome/test/media_router/media_router_integration_ui_browsertest.cc

Comment 23 by mglaess...@gmail.com, Jan 17 (5 days ago)

I've disabled the following functions to try to eliminate the traffic in our Enterprise. 
  - Load Media Router Component Extension
  - Cast Streaming hardware video encoding
  - Connect to Cast devices on all IP addresses
  - Device Discovery Notifications

We are still seeing heavy SSDP traffic from Chrome on every computer on our VLANs. Is there any way to disable this? 

HOST: 239.255.255.250:1900
MAN: "ssdp:discover"
MX: 1
ST: urn:dial-multiscreen-org:service:dial:1
USER-AGENT: Google Chrome/71.0.3578.80 Windows

Thanks 

Comment 24 by mfo...@chromium.org, Jan 17 (5 days ago)

You can't do it through flags.  The policy in Comment #1 is what you need to set to "false".

Comment 25 by mglaess...@gmail.com, Jan 18 (4 days ago)

Excellent. Thank you for the response.

Sign in to add a comment