Add SSM support to Direct Sockets API (services/network and Blink layers) [chromium/src : main]

0 views
Skip to first unread message

Omar Ramadan (Gerrit)

unread,
Nov 21, 2025, 3:42:21 PMNov 21
to chromium...@chromium.org, Andrew Rayskiy, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org

Omar Ramadan abandoned this change

Related details

Attention set is empty
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: abandon
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: Id11508b7f43b1fd63afd1edb7b5e99a97e0ec29f
Gerrit-Change-Number: 7182218
Gerrit-PatchSet: 4
Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
Gerrit-CC: Andrew Rayskiy <green...@google.com>
Gerrit-CC: Kentaro Hara <har...@chromium.org>
Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
Gerrit-CC: Simon Hangl <sim...@google.com>
satisfied_requirement
unsatisfied_requirement
open
diffy

Vlad Krot (Gerrit)

unread,
Nov 24, 2025, 8:07:02 AM (14 days ago) Nov 24
to Omar Ramadan, Andrew Rayskiy, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
Attention needed from Andrew Rayskiy, Omar Ramadan and Reilly Grant

Vlad Krot added 2 comments

File third_party/blink/renderer/modules/direct_sockets/multicast_controller.h
Line 109, Patchset 14 (Latest): Vector<String> joined_groups_;
Vlad Krot . unresolved

Why not hold MembershipKey in this vector? Then string operations to join strings + "@" won't be necessary.

File third_party/blink/tools/blinkpy/presubmit/audit_non_blink_usage.py
Line 840, Patchset 14 (Latest): 'net::IPAddress',
Vlad Krot . unresolved

Why this is needed?

Open in Gerrit

Related details

Attention is currently required from:
  • Andrew Rayskiy
  • Omar Ramadan
  • Reilly Grant
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
Gerrit-Change-Number: 7186747
Gerrit-PatchSet: 14
Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
Gerrit-Reviewer: Andrew Rayskiy <green...@google.com>
Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
Gerrit-Reviewer: Vlad Krot <vk...@google.com>
Gerrit-CC: Kentaro Hara <har...@chromium.org>
Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
Gerrit-CC: Simon Hangl <sim...@google.com>
Gerrit-Attention: Reilly Grant <rei...@chromium.org>
Gerrit-Attention: Omar Ramadan <om...@blockcast.net>
Gerrit-Attention: Andrew Rayskiy <green...@google.com>
Gerrit-Comment-Date: Mon, 24 Nov 2025 13:06:43 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Vlad Krot (Gerrit)

unread,
Nov 24, 2025, 8:11:13 AM (14 days ago) Nov 24
to Omar Ramadan, Andrew Rayskiy, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
Attention needed from Andrew Rayskiy, Omar Ramadan and Reilly Grant

Vlad Krot added 1 comment

File third_party/blink/renderer/modules/direct_sockets/multicast_controller.cc
Line 40, Patchset 14 (Latest):std::optional<net::IPAddress> MulticastController::ParseAndValidateIPAddress(
Vlad Krot . unresolved

IsValidMulticastAddress can be included in this function. It is fine if old joinGroup/leaveGroup will also be checked for multicast address.

Gerrit-Comment-Date: Mon, 24 Nov 2025 13:10:57 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Omar Ramadan (Gerrit)

unread,
Nov 24, 2025, 11:51:06 AM (13 days ago) Nov 24
to Andrew Rayskiy, Vlad Krot, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
Attention needed from Andrew Rayskiy, Reilly Grant and Vlad Krot

Omar Ramadan added 3 comments

File third_party/blink/renderer/modules/direct_sockets/multicast_controller.h
Line 109, Patchset 14: Vector<String> joined_groups_;
Vlad Krot . resolved

Why not hold MembershipKey in this vector? Then string operations to join strings + "@" won't be necessary.

Omar Ramadan

Done. Changed joined_groups_ from Vector<String> to Vector<MembershipKey> to eliminate string concatenation operations.

File third_party/blink/renderer/modules/direct_sockets/multicast_controller.cc
Line 40, Patchset 14:std::optional<net::IPAddress> MulticastController::ParseAndValidateIPAddress(
Vlad Krot . resolved

IsValidMulticastAddress can be included in this function. It is fine if old joinGroup/leaveGroup will also be checked for multicast address.

Omar Ramadan

Done. Created ParseAndValidateMulticastAddress() and ParseAndValidateUnicastAddress() that include the multicast check. Both joinGroup and leaveGroup now validate addresses appropriately.

File third_party/blink/tools/blinkpy/presubmit/audit_non_blink_usage.py
Line 840, Patchset 14: 'net::IPAddress',
Vlad Krot . resolved

Why this is needed?

Omar Ramadan

MulticastController uses it in the public API for ParseAndValidateIPAddress and IsValidMulticastAddress. The audit tool requires explicit approval for non-Blink types used in Blink code.

Open in Gerrit

Related details

Attention is currently required from:
  • Andrew Rayskiy
  • Reilly Grant
  • Vlad Krot
Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
    Gerrit-Change-Number: 7186747
    Gerrit-PatchSet: 15
    Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
    Gerrit-Reviewer: Andrew Rayskiy <green...@google.com>
    Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
    Gerrit-Reviewer: Vlad Krot <vk...@google.com>
    Gerrit-CC: Kentaro Hara <har...@chromium.org>
    Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
    Gerrit-CC: Simon Hangl <sim...@google.com>
    Gerrit-Attention: Reilly Grant <rei...@chromium.org>
    Gerrit-Attention: Andrew Rayskiy <green...@google.com>
    Gerrit-Attention: Vlad Krot <vk...@google.com>
    Gerrit-Comment-Date: Mon, 24 Nov 2025 16:50:45 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Vlad Krot <vk...@google.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Vlad Krot (Gerrit)

    unread,
    Nov 24, 2025, 12:03:23 PM (13 days ago) Nov 24
    to Omar Ramadan, Andrew Rayskiy, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
    Attention needed from Andrew Rayskiy, Omar Ramadan and Reilly Grant

    Vlad Krot added 2 comments

    File third_party/blink/renderer/modules/direct_sockets/multicast_controller.h
    Line 116, Patchset 15 (Latest): HeapHashMap<String, Member<ScriptPromiseResolver<IDLUndefined>>>
    Vlad Krot . unresolved

    Why not use MembershipKey here as well as a key. Then membership_key_str will not be necessary. The hashing function will be required.

    Line 94, Patchset 15 (Latest): const String& ip_string,
    Vlad Krot . unresolved

    Since these functions are not used anywhere outside of this file, I recommend to move them to .cc and to anynimous namespace. This will also eliminate the need for touching third_party/blink/tools/blinkpy/presubmit/audit_non_blink_usage.py

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Andrew Rayskiy
    • Omar Ramadan
    • Reilly Grant
    Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement is not satisfiedCode-Owners
      • requirement is not satisfiedCode-Review
      • requirement is not satisfiedNo-Unresolved-Comments
      • requirement is not satisfiedReview-Enforcement
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: comment
      Gerrit-Project: chromium/src
      Gerrit-Branch: main
      Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
      Gerrit-Change-Number: 7186747
      Gerrit-PatchSet: 15
      Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
      Gerrit-Reviewer: Andrew Rayskiy <green...@google.com>
      Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
      Gerrit-Reviewer: Vlad Krot <vk...@google.com>
      Gerrit-CC: Kentaro Hara <har...@chromium.org>
      Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
      Gerrit-CC: Simon Hangl <sim...@google.com>
      Gerrit-Attention: Reilly Grant <rei...@chromium.org>
      Gerrit-Attention: Omar Ramadan <om...@blockcast.net>
      Gerrit-Attention: Andrew Rayskiy <green...@google.com>
      Gerrit-Comment-Date: Mon, 24 Nov 2025 17:03:08 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Omar Ramadan (Gerrit)

      unread,
      Nov 24, 2025, 2:24:42 PM (13 days ago) Nov 24
      to Andrew Rayskiy, Vlad Krot, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
      Attention needed from Andrew Rayskiy, Reilly Grant and Vlad Krot

      Omar Ramadan added 2 comments

      File third_party/blink/renderer/modules/direct_sockets/multicast_controller.h
      Line 116, Patchset 15: HeapHashMap<String, Member<ScriptPromiseResolver<IDLUndefined>>>
      Vlad Krot . resolved

      Why not use MembershipKey here as well as a key. Then membership_key_str will not be necessary. The hashing function will be required.

      Omar Ramadan

      Changed HeapHashMap keys from String to MembershipKey with custom hash function, eliminating membership_key_str conversions.

      Line 94, Patchset 15: const String& ip_string,
      Vlad Krot . unresolved

      Since these functions are not used anywhere outside of this file, I recommend to move them to .cc and to anynimous namespace. This will also eliminate the need for touching third_party/blink/tools/blinkpy/presubmit/audit_non_blink_usage.py

      Omar Ramadan

      Moved to anonymous namespace in .cc but audit still complained about net::IPAddress although was already used in multicast_controller.cc. Is it safe to ignore?

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Andrew Rayskiy
      • Reilly Grant
      • Vlad Krot
      Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement is not satisfiedCode-Owners
      • requirement is not satisfiedCode-Review
      • requirement is not satisfiedNo-Unresolved-Comments
      • requirement is not satisfiedReview-Enforcement
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: comment
      Gerrit-Project: chromium/src
      Gerrit-Branch: main
      Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
      Gerrit-Change-Number: 7186747
      Gerrit-PatchSet: 17
      Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
      Gerrit-Reviewer: Andrew Rayskiy <green...@google.com>
      Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
      Gerrit-Reviewer: Vlad Krot <vk...@google.com>
      Gerrit-CC: Kentaro Hara <har...@chromium.org>
      Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
      Gerrit-CC: Simon Hangl <sim...@google.com>
      Gerrit-Attention: Reilly Grant <rei...@chromium.org>
      Gerrit-Attention: Andrew Rayskiy <green...@google.com>
      Gerrit-Attention: Vlad Krot <vk...@google.com>
      Gerrit-Comment-Date: Mon, 24 Nov 2025 19:24:20 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      Comment-In-Reply-To: Vlad Krot <vk...@google.com>
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Reilly Grant (Gerrit)

      unread,
      Nov 24, 2025, 3:00:49 PM (13 days ago) Nov 24
      to Omar Ramadan, Andrew Rayskiy, Vlad Krot, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
      Attention needed from Andrew Rayskiy, Omar Ramadan and Vlad Krot

      Reilly Grant added 2 comments

      File third_party/blink/renderer/modules/direct_sockets/multicast_controller.cc
      Line 27, Patchset 17 (Latest):bool IsValidMulticastAddress(const net::IPAddress& address) {
      Reilly Grant . unresolved

      Consider adding this to `IPAddress` like the existing `IsPubliclyRoutable` method.

      Line 140, Patchset 17 (Latest): return {};
      Reilly Grant . unresolved

      We now need to catch the case where an empty string was provided for this non-optional parameter.

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Andrew Rayskiy
      • Omar Ramadan
      • Vlad Krot
      Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement is not satisfiedCode-Owners
      • requirement is not satisfiedCode-Review
      • requirement is not satisfiedNo-Unresolved-Comments
      • requirement is not satisfiedReview-Enforcement
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: comment
      Gerrit-Project: chromium/src
      Gerrit-Branch: main
      Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
      Gerrit-Change-Number: 7186747
      Gerrit-PatchSet: 17
      Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
      Gerrit-Reviewer: Andrew Rayskiy <green...@google.com>
      Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
      Gerrit-Reviewer: Vlad Krot <vk...@google.com>
      Gerrit-CC: Kentaro Hara <har...@chromium.org>
      Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
      Gerrit-CC: Simon Hangl <sim...@google.com>
      Gerrit-Attention: Omar Ramadan <om...@blockcast.net>
      Gerrit-Attention: Andrew Rayskiy <green...@google.com>
      Gerrit-Attention: Vlad Krot <vk...@google.com>
      Gerrit-Comment-Date: Mon, 24 Nov 2025 20:00:37 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Reilly Grant (Gerrit)

      unread,
      Nov 24, 2025, 3:02:30 PM (13 days ago) Nov 24
      to Omar Ramadan, Andrew Rayskiy, Vlad Krot, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
      Attention needed from Andrew Rayskiy, Omar Ramadan and Vlad Krot

      Reilly Grant added 1 comment

      File third_party/blink/renderer/modules/direct_sockets/multicast_controller.idl
      Line 14, Patchset 17 (Latest): Promise<undefined> joinGroup(DOMString ipAddress, optional DOMString? sourceAddress);
      Reilly Grant . unresolved

      Create a new feature in `runtime_enabled_features.json5` for this and add the [RuntimeEnabled] attribute to `sourceAddress` so that it's only accepted if the feature is enabled.

      Gerrit-Comment-Date: Mon, 24 Nov 2025 20:02:16 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Andrew Rayskiy (Gerrit)

      unread,
      Nov 25, 2025, 7:45:27 AM (13 days ago) Nov 25
      to Omar Ramadan, Vlad Krot, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
      Attention needed from Omar Ramadan and Vlad Krot

      Andrew Rayskiy added 8 comments

      File third_party/blink/renderer/modules/direct_sockets/multicast_controller.h
      Line 94, Patchset 17 (Latest): return StringHash::GetHash(key.group) ^
      Andrew Rayskiy . unresolved

      Tbh I'd rather do a `StringHash::GetHash(key.ToString())` here -- it's unique enough

      Line 87, Patchset 17 (Latest): bool operator==(const MembershipKey& other) const {
      Andrew Rayskiy . unresolved

      just default the operator?

      Line 81, Patchset 17 (Latest): String source; // Empty for ASM
      Andrew Rayskiy . unresolved

      `optional<>`?

      Line 80, Patchset 17 (Latest): String group;
      Andrew Rayskiy . unresolved

      I'd just keep `IP`, `IP` here instead of strings

      Line 42, Patchset 17 (Latest): ScriptPromise<IDLUndefined> joinGroup(ScriptState*,
      Andrew Rayskiy . unresolved

      Wouldn't it be simpler to merge these functions? With `(ScriptState*, const String&, MulticastGroupOptions*, ExceptionState&`)?

      Line 94, Patchset 15: const String& ip_string,
      Vlad Krot . resolved

      Since these functions are not used anywhere outside of this file, I recommend to move them to .cc and to anynimous namespace. This will also eliminate the need for touching third_party/blink/tools/blinkpy/presubmit/audit_non_blink_usage.py

      Omar Ramadan

      Moved to anonymous namespace in .cc but audit still complained about net::IPAddress although was already used in multicast_controller.cc. Is it safe to ignore?

      Andrew Rayskiy

      Yes, it's fine.

      File third_party/blink/renderer/modules/direct_sockets/multicast_controller.cc
      Line 260, Patchset 17 (Latest): MembershipKey key;
      Andrew Rayskiy . unresolved

      I'd create a proper constructor for this which takes `(const IP&, const optional<IP>&)`

      File third_party/blink/renderer/modules/direct_sockets/multicast_controller.idl
      Line 14, Patchset 16: Promise<undefined> joinGroup(DOMString ipAddress, optional DOMString? sourceAddress);
      Andrew Rayskiy . unresolved

      I believe you wanted to go with MulticastGroupOptions as per the spec PR?

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Omar Ramadan
      • Vlad Krot
      Gerrit-Attention: Vlad Krot <vk...@google.com>
      Gerrit-Comment-Date: Tue, 25 Nov 2025 12:45:12 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      Comment-In-Reply-To: Omar Ramadan <om...@blockcast.net>
      Comment-In-Reply-To: Vlad Krot <vk...@google.com>
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Omar Ramadan (Gerrit)

      unread,
      Nov 26, 2025, 11:48:51 AM (11 days ago) Nov 26
      to AyeAye, Andrew Rayskiy, Vlad Krot, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
      Attention needed from Andrew Rayskiy, Reilly Grant and Vlad Krot

      Omar Ramadan added 11 comments

      Patchset-level comments
      File-level comment, Patchset 18 (Latest):
      Omar Ramadan . resolved

      thank you so much for the quick review all, and guiding me as a first time contributor. sorry for tagging folks unnecessarily

      File third_party/blink/renderer/modules/direct_sockets/multicast_controller.h
      Line 94, Patchset 17: return StringHash::GetHash(key.group) ^
      Andrew Rayskiy . resolved

      Tbh I'd rather do a `StringHash::GetHash(key.ToString())` here -- it's unique enough

      Omar Ramadan

      Done

      Line 87, Patchset 17: bool operator==(const MembershipKey& other) const {
      Andrew Rayskiy . resolved

      just default the operator?

      Omar Ramadan

      Done

      Line 81, Patchset 17: String source; // Empty for ASM
      Andrew Rayskiy . resolved

      `optional<>`?

      Omar Ramadan

      Done

      Line 80, Patchset 17: String group;
      Andrew Rayskiy . resolved

      I'd just keep `IP`, `IP` here instead of strings

      Omar Ramadan

      Done

      Line 42, Patchset 17: ScriptPromise<IDLUndefined> joinGroup(ScriptState*,
      Andrew Rayskiy . resolved

      Wouldn't it be simpler to merge these functions? With `(ScriptState*, const String&, MulticastGroupOptions*, ExceptionState&`)?

      Omar Ramadan

      Done

      File third_party/blink/renderer/modules/direct_sockets/multicast_controller.cc
      Line 27, Patchset 17:bool IsValidMulticastAddress(const net::IPAddress& address) {
      Reilly Grant . resolved

      Consider adding this to `IPAddress` like the existing `IsPubliclyRoutable` method.

      Omar Ramadan

      Done

      Line 140, Patchset 17: return {};
      Reilly Grant . resolved

      We now need to catch the case where an empty string was provided for this non-optional parameter.

      Omar Ramadan

      Done

      Line 260, Patchset 17: MembershipKey key;
      Andrew Rayskiy . resolved

      I'd create a proper constructor for this which takes `(const IP&, const optional<IP>&)`

      Omar Ramadan

      Done

      File third_party/blink/renderer/modules/direct_sockets/multicast_controller.idl
      Line 14, Patchset 16: Promise<undefined> joinGroup(DOMString ipAddress, optional DOMString? sourceAddress);
      Andrew Rayskiy . resolved

      I believe you wanted to go with MulticastGroupOptions as per the spec PR?

      Omar Ramadan

      Done

      Line 14, Patchset 17: Promise<undefined> joinGroup(DOMString ipAddress, optional DOMString? sourceAddress);
      Reilly Grant . resolved

      Create a new feature in `runtime_enabled_features.json5` for this and add the [RuntimeEnabled] attribute to `sourceAddress` so that it's only accepted if the feature is enabled.

      Omar Ramadan

      Done

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Andrew Rayskiy
      • Reilly Grant
      • Vlad Krot
      Submit Requirements:
        • requirement satisfiedCode-Coverage
        • requirement is not satisfiedCode-Owners
        • requirement is not satisfiedCode-Review
        • requirement is not satisfiedReview-Enforcement
        Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
        Gerrit-MessageType: comment
        Gerrit-Project: chromium/src
        Gerrit-Branch: main
        Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
        Gerrit-Change-Number: 7186747
        Gerrit-PatchSet: 18
        Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
        Gerrit-Reviewer: Andrew Rayskiy <green...@google.com>
        Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
        Gerrit-Reviewer: Vlad Krot <vk...@google.com>
        Gerrit-CC: Kentaro Hara <har...@chromium.org>
        Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
        Gerrit-CC: Simon Hangl <sim...@google.com>
        Gerrit-Attention: Reilly Grant <rei...@chromium.org>
        Gerrit-Attention: Andrew Rayskiy <green...@google.com>
        Gerrit-Attention: Vlad Krot <vk...@google.com>
        Gerrit-Comment-Date: Wed, 26 Nov 2025 16:48:33 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: No
        Comment-In-Reply-To: Reilly Grant <rei...@chromium.org>
        Comment-In-Reply-To: Andrew Rayskiy <green...@google.com>
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Reilly Grant (Gerrit)

        unread,
        Nov 26, 2025, 7:49:31 PM (11 days ago) Nov 26
        to Omar Ramadan, AyeAye, Andrew Rayskiy, Vlad Krot, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
        Attention needed from Andrew Rayskiy, Omar Ramadan and Vlad Krot

        Reilly Grant added 5 comments

        File net/base/ip_address.cc
        Line 214, Patchset 19 (Latest):bool IPAddress::IsMulticast() const {
        Reilly Grant . unresolved

        Use `IPAddressPrefixCheck` in this method.

        File third_party/blink/renderer/modules/direct_sockets/multicast_controller.cc
        Line 140, Patchset 19 (Latest): if (!group_ip.has_value()) {
        return {};
        }
        Reilly Grant . unresolved
        I would move the check above into here to make sure we always catch cases where `group_ip` is nullopt without an exception having been thrown.
        ```suggestion
        if (!group_ip.has_value()) {
        if (!exception_state.HadException()) {
        exception_state.ThrowTypeError("ipAddress must not be empty");
        }
        return {};
        }
        ```
        File third_party/blink/renderer/modules/direct_sockets/multicast_controller.idl
        Line 2, Patchset 19 (Latest): required DOMString groupAddress;
        Reilly Grant . unresolved
        ```suggestion
        DOMString groupAddress;
        ```
        File third_party/blink/renderer/modules/direct_sockets/multicast_controller_unittest.cc
        Line 32, Patchset 19 (Latest):MulticastGroupOptions MakeSourceOptions(const char* source_address) {
        Reilly Grant . unresolved

        ```suggestion
        MulticastGroupOptions MakeSourceOptions(std::string_view source_address) {
        ```

        File third_party/blink/renderer/platform/runtime_enabled_features.json5
        Line 3434, Patchset 19 (Latest): status: "stable",
        Reilly Grant . unresolved

        This lets us land this change before the Intent to Ship is approved.

        ```suggestion
        status: "experimental",
        ```
        Open in Gerrit

        Related details

        Attention is currently required from:
        • Andrew Rayskiy
        • Omar Ramadan
        • Vlad Krot
        Submit Requirements:
          • requirement satisfiedCode-Coverage
          • requirement is not satisfiedCode-Owners
          • requirement is not satisfiedCode-Review
          • requirement is not satisfiedNo-Unresolved-Comments
          • requirement is not satisfiedReview-Enforcement
          Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
          Gerrit-MessageType: comment
          Gerrit-Project: chromium/src
          Gerrit-Branch: main
          Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
          Gerrit-Change-Number: 7186747
          Gerrit-PatchSet: 19
          Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
          Gerrit-Reviewer: Andrew Rayskiy <green...@google.com>
          Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
          Gerrit-Reviewer: Vlad Krot <vk...@google.com>
          Gerrit-CC: Kentaro Hara <har...@chromium.org>
          Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
          Gerrit-CC: Simon Hangl <sim...@google.com>
          Gerrit-Attention: Omar Ramadan <om...@blockcast.net>
          Gerrit-Attention: Andrew Rayskiy <green...@google.com>
          Gerrit-Attention: Vlad Krot <vk...@google.com>
          Gerrit-Comment-Date: Thu, 27 Nov 2025 00:49:23 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: No
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Omar Ramadan (Gerrit)

          unread,
          Nov 26, 2025, 8:16:49 PM (11 days ago) Nov 26
          to AyeAye, Andrew Rayskiy, Vlad Krot, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
          Attention needed from Andrew Rayskiy, Reilly Grant and Vlad Krot

          Omar Ramadan added 6 comments

          Patchset-level comments
          File-level comment, Patchset 19:
          Omar Ramadan . resolved

          tysm! addressing comments + rebase

          File net/base/ip_address.cc
          Line 214, Patchset 19:bool IPAddress::IsMulticast() const {
          Reilly Grant . resolved

          Use `IPAddressPrefixCheck` in this method.

          Omar Ramadan

          Done

          File third_party/blink/renderer/modules/direct_sockets/multicast_controller.cc
          Line 140, Patchset 19: if (!group_ip.has_value()) {
          return {};
          }
          Reilly Grant . resolved
          I would move the check above into here to make sure we always catch cases where `group_ip` is nullopt without an exception having been thrown.
          ```suggestion
          if (!group_ip.has_value()) {
          if (!exception_state.HadException()) {
          exception_state.ThrowTypeError("ipAddress must not be empty");
          }
          return {};
          }
          ```
          Omar Ramadan

          Done

          File third_party/blink/renderer/modules/direct_sockets/multicast_controller.idl
          Line 2, Patchset 19: required DOMString groupAddress;
          Reilly Grant . resolved
          ```suggestion
          DOMString groupAddress;
          ```
          Omar Ramadan

          Done

          File third_party/blink/renderer/modules/direct_sockets/multicast_controller_unittest.cc
          Line 32, Patchset 19:MulticastGroupOptions MakeSourceOptions(const char* source_address) {
          Reilly Grant . resolved

          ```suggestion
          MulticastGroupOptions MakeSourceOptions(std::string_view source_address) {
          ```

          Omar Ramadan

          Done

          File third_party/blink/renderer/platform/runtime_enabled_features.json5
          Line 3434, Patchset 19: status: "stable",
          Reilly Grant . resolved

          This lets us land this change before the Intent to Ship is approved.

          ```suggestion
          status: "experimental",
          ```
          Omar Ramadan

          Done

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Andrew Rayskiy
          • Reilly Grant
          • Vlad Krot
          Submit Requirements:
            • requirement satisfiedCode-Coverage
            • requirement is not satisfiedCode-Owners
            • requirement is not satisfiedCode-Review
            • requirement is not satisfiedReview-Enforcement
            Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
            Gerrit-MessageType: comment
            Gerrit-Project: chromium/src
            Gerrit-Branch: main
            Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
            Gerrit-Change-Number: 7186747
            Gerrit-PatchSet: 19
            Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
            Gerrit-Reviewer: Andrew Rayskiy <green...@google.com>
            Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
            Gerrit-Reviewer: Vlad Krot <vk...@google.com>
            Gerrit-CC: Kentaro Hara <har...@chromium.org>
            Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
            Gerrit-CC: Simon Hangl <sim...@google.com>
            Gerrit-Attention: Reilly Grant <rei...@chromium.org>
            Gerrit-Attention: Andrew Rayskiy <green...@google.com>
            Gerrit-Attention: Vlad Krot <vk...@google.com>
            Gerrit-Comment-Date: Thu, 27 Nov 2025 01:16:26 +0000
            Gerrit-HasComments: Yes
            Gerrit-Has-Labels: No
            Comment-In-Reply-To: Reilly Grant <rei...@chromium.org>
            satisfied_requirement
            unsatisfied_requirement
            open
            diffy

            Vlad Krot (Gerrit)

            unread,
            Nov 27, 2025, 7:58:56 AM (11 days ago) Nov 27
            to Omar Ramadan, AyeAye, Andrew Rayskiy, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
            Attention needed from Andrew Rayskiy, Omar Ramadan and Reilly Grant

            Vlad Krot added 1 comment

            File third_party/blink/renderer/platform/runtime_enabled_features.json5
            Line 3434, Patchset 19: status: "stable",
            Reilly Grant . unresolved

            This lets us land this change before the Intent to Ship is approved.

            ```suggestion
            status: "experimental",
            ```
            Omar Ramadan

            Done

            Vlad Krot

            We need a separate flag. This change will disable Multicast altogether which is already used by developers, and they expect this functionality to not disappear.
            Also, I would suggest adding a flag in about://flags to simplify testing for those who are interested.
            And do this all in a separate CL.
            Reference - https://chromium-review.googlesource.com/c/chromium/src/+/6890773

            Open in Gerrit

            Related details

            Attention is currently required from:
            • Andrew Rayskiy
            • Omar Ramadan
            • Reilly Grant
            Submit Requirements:
              • requirement satisfiedCode-Coverage
              • requirement is not satisfiedCode-Owners
              • requirement is not satisfiedCode-Review
              • requirement is not satisfiedNo-Unresolved-Comments
              • requirement is not satisfiedReview-Enforcement
              Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
              Gerrit-MessageType: comment
              Gerrit-Project: chromium/src
              Gerrit-Branch: main
              Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
              Gerrit-Change-Number: 7186747
              Gerrit-PatchSet: 21
              Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
              Gerrit-Reviewer: Andrew Rayskiy <green...@google.com>
              Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
              Gerrit-Reviewer: Vlad Krot <vk...@google.com>
              Gerrit-CC: Kentaro Hara <har...@chromium.org>
              Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
              Gerrit-CC: Simon Hangl <sim...@google.com>
              Gerrit-Attention: Reilly Grant <rei...@chromium.org>
              Gerrit-Attention: Omar Ramadan <om...@blockcast.net>
              Gerrit-Attention: Andrew Rayskiy <green...@google.com>
              Gerrit-Comment-Date: Thu, 27 Nov 2025 12:58:41 +0000
              Gerrit-HasComments: Yes
              Gerrit-Has-Labels: No
              Comment-In-Reply-To: Reilly Grant <rei...@chromium.org>
              Comment-In-Reply-To: Omar Ramadan <om...@blockcast.net>
              satisfied_requirement
              unsatisfied_requirement
              open
              diffy

              Omar Ramadan (Gerrit)

              unread,
              Nov 30, 2025, 3:33:13 PM (7 days ago) Nov 30
              to Andrew Rayskiy, AyeAye, Vlad Krot, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
              Attention needed from Reilly Grant and Vlad Krot

              Omar Ramadan added 1 comment

              File third_party/blink/renderer/platform/runtime_enabled_features.json5
              Line 3434, Patchset 19: status: "stable",
              Reilly Grant . resolved

              This lets us land this change before the Intent to Ship is approved.

              ```suggestion
              status: "experimental",
              ```
              Omar Ramadan

              Done

              Vlad Krot

              We need a separate flag. This change will disable Multicast altogether which is already used by developers, and they expect this functionality to not disappear.
              Also, I would suggest adding a flag in about://flags to simplify testing for those who are interested.
              And do this all in a separate CL.
              Reference - https://chromium-review.googlesource.com/c/chromium/src/+/6890773

              Omar Ramadan

              Done. Moved the feature flag to CL 7212151

              Open in Gerrit

              Related details

              Attention is currently required from:
              • Reilly Grant
              • Vlad Krot
              Submit Requirements:
                • requirement satisfiedCode-Coverage
                • requirement is not satisfiedCode-Owners
                • requirement is not satisfiedCode-Review
                • requirement is not satisfiedReview-Enforcement
                Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                Gerrit-MessageType: comment
                Gerrit-Project: chromium/src
                Gerrit-Branch: main
                Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                Gerrit-Change-Number: 7186747
                Gerrit-PatchSet: 25
                Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                Gerrit-CC: Andrew Rayskiy <green...@google.com>
                Gerrit-CC: Kentaro Hara <har...@chromium.org>
                Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                Gerrit-CC: Simon Hangl <sim...@google.com>
                Gerrit-Attention: Reilly Grant <rei...@chromium.org>
                Gerrit-Attention: Vlad Krot <vk...@google.com>
                Gerrit-Comment-Date: Sun, 30 Nov 2025 20:32:50 +0000
                Gerrit-HasComments: Yes
                Gerrit-Has-Labels: No
                Comment-In-Reply-To: Reilly Grant <rei...@chromium.org>
                Comment-In-Reply-To: Omar Ramadan <om...@blockcast.net>
                Comment-In-Reply-To: Vlad Krot <vk...@google.com>
                satisfied_requirement
                unsatisfied_requirement
                open
                diffy

                Vlad Krot (Gerrit)

                unread,
                Dec 1, 2025, 6:47:49 AM (7 days ago) Dec 1
                to Omar Ramadan, Andrew Rayskiy, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                Attention needed from Omar Ramadan and Reilly Grant

                Vlad Krot added 2 comments

                File services/network/restricted_udp_socket.cc
                Line 44, Patchset 26 (Latest): udp_socket_->JoinSourceGroup(group_address, *source_address,
                Vlad Krot . unresolved

                Source-Specific Multicast (SSM) feature flag must be checked here in case renderer was compromised. If the flag is disabled, but the function was called with source_address, then do mojo::ReportBadMessage("no permission to use source-specific multicast");

                File third_party/blink/renderer/modules/direct_sockets/multicast_controller.cc
                Line 120, Patchset 26 (Latest):ScriptPromise<IDLUndefined> MulticastController::joinGroup(
                Vlad Krot . unresolved

                There should be a check for new feature flag here. Now the addition to multicast API is possible to use with the flag disabled.

                Open in Gerrit

                Related details

                Attention is currently required from:
                • Omar Ramadan
                • Reilly Grant
                Submit Requirements:
                  • requirement satisfiedCode-Coverage
                  • requirement is not satisfiedCode-Owners
                  • requirement is not satisfiedCode-Review
                  • requirement is not satisfiedNo-Unresolved-Comments
                  • requirement is not satisfiedReview-Enforcement
                  Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                  Gerrit-MessageType: comment
                  Gerrit-Project: chromium/src
                  Gerrit-Branch: main
                  Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                  Gerrit-Change-Number: 7186747
                  Gerrit-PatchSet: 26
                  Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                  Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                  Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                  Gerrit-CC: Andrew Rayskiy <green...@google.com>
                  Gerrit-CC: Kentaro Hara <har...@chromium.org>
                  Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                  Gerrit-CC: Simon Hangl <sim...@google.com>
                  Gerrit-Attention: Reilly Grant <rei...@chromium.org>
                  Gerrit-Attention: Omar Ramadan <om...@blockcast.net>
                  Gerrit-Comment-Date: Mon, 01 Dec 2025 11:47:33 +0000
                  Gerrit-HasComments: Yes
                  Gerrit-Has-Labels: No
                  satisfied_requirement
                  unsatisfied_requirement
                  open
                  diffy

                  Vlad Krot (Gerrit)

                  unread,
                  Dec 1, 2025, 8:25:51 AM (7 days ago) Dec 1
                  to Omar Ramadan, Andrew Rayskiy, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                  Attention needed from Omar Ramadan and Reilly Grant

                  Vlad Krot added 1 comment

                  File services/network/public/cpp/permissions_policy/permissions_policy_features.json5
                  Line 453, Patchset 27 (Latest): name: "SourceSpecificMulticastInDirectSockets",
                  Vlad Krot . unresolved

                  I don't think that a new permission policy is necessary. This is usually added to guard some dangerous functionality, I don't see how source specific multicast is more dangerous then the usual one.

                  Open in Gerrit

                  Related details

                  Attention is currently required from:
                  • Omar Ramadan
                  • Reilly Grant
                  Submit Requirements:
                  • requirement satisfiedCode-Coverage
                  • requirement is not satisfiedCode-Owners
                  • requirement is not satisfiedCode-Review
                  • requirement is not satisfiedNo-Unresolved-Comments
                  • requirement is not satisfiedReview-Enforcement
                  Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                  Gerrit-MessageType: comment
                  Gerrit-Project: chromium/src
                  Gerrit-Branch: main
                  Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                  Gerrit-Change-Number: 7186747
                  Gerrit-PatchSet: 27
                  Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                  Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                  Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                  Gerrit-CC: Andrew Rayskiy <green...@google.com>
                  Gerrit-CC: Kentaro Hara <har...@chromium.org>
                  Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                  Gerrit-CC: Simon Hangl <sim...@google.com>
                  Gerrit-Attention: Reilly Grant <rei...@chromium.org>
                  Gerrit-Attention: Omar Ramadan <om...@blockcast.net>
                  Gerrit-Comment-Date: Mon, 01 Dec 2025 13:25:30 +0000
                  Gerrit-HasComments: Yes
                  Gerrit-Has-Labels: No
                  satisfied_requirement
                  unsatisfied_requirement
                  open
                  diffy

                  Vlad Krot (Gerrit)

                  unread,
                  Dec 1, 2025, 8:26:19 AM (7 days ago) Dec 1
                  to Omar Ramadan, Andrew Rayskiy, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                  Attention needed from Omar Ramadan and Reilly Grant

                  Vlad Krot added 1 comment

                  Commit Message
                  Gerrit-Comment-Date: Mon, 01 Dec 2025 13:25:59 +0000
                  Gerrit-HasComments: Yes
                  Gerrit-Has-Labels: No
                  satisfied_requirement
                  unsatisfied_requirement
                  open
                  diffy

                  Omar Ramadan (Gerrit)

                  unread,
                  Dec 1, 2025, 3:54:54 PM (6 days ago) Dec 1
                  to Andrew Rayskiy, AyeAye, Vlad Krot, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                  Attention needed from Reilly Grant and Vlad Krot

                  Omar Ramadan added 4 comments

                  Commit Message
                  Line 9, Patchset 27:https://chromestatus.com/feature/6208452397498368
                  Vlad Krot . resolved

                  Create intent to prototype.

                  Omar Ramadan

                  Done

                  File services/network/public/cpp/permissions_policy/permissions_policy_features.json5
                  Line 453, Patchset 27: name: "SourceSpecificMulticastInDirectSockets",
                  Vlad Krot . resolved

                  I don't think that a new permission policy is necessary. This is usually added to guard some dangerous functionality, I don't see how source specific multicast is more dangerous then the usual one.

                  Omar Ramadan

                  Done

                  File services/network/restricted_udp_socket.cc
                  Line 44, Patchset 26: udp_socket_->JoinSourceGroup(group_address, *source_address,
                  Vlad Krot . resolved

                  Source-Specific Multicast (SSM) feature flag must be checked here in case renderer was compromised. If the flag is disabled, but the function was called with source_address, then do mojo::ReportBadMessage("no permission to use source-specific multicast");

                  Omar Ramadan

                  Done

                  File third_party/blink/renderer/modules/direct_sockets/multicast_controller.cc
                  Line 120, Patchset 26:ScriptPromise<IDLUndefined> MulticastController::joinGroup(
                  Vlad Krot . resolved

                  There should be a check for new feature flag here. Now the addition to multicast API is possible to use with the flag disabled.

                  Omar Ramadan

                  Done

                  Open in Gerrit

                  Related details

                  Attention is currently required from:
                  • Reilly Grant
                  • Vlad Krot
                  Submit Requirements:
                    • requirement satisfiedCode-Coverage
                    • requirement is not satisfiedCode-Owners
                    • requirement is not satisfiedCode-Review
                    • requirement is not satisfiedReview-Enforcement
                    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                    Gerrit-MessageType: comment
                    Gerrit-Project: chromium/src
                    Gerrit-Branch: main
                    Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                    Gerrit-Change-Number: 7186747
                    Gerrit-PatchSet: 29
                    Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                    Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                    Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                    Gerrit-CC: Andrew Rayskiy <green...@google.com>
                    Gerrit-CC: Kentaro Hara <har...@chromium.org>
                    Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                    Gerrit-CC: Simon Hangl <sim...@google.com>
                    Gerrit-Attention: Reilly Grant <rei...@chromium.org>
                    Gerrit-Attention: Vlad Krot <vk...@google.com>
                    Gerrit-Comment-Date: Mon, 01 Dec 2025 20:54:37 +0000
                    Gerrit-HasComments: Yes
                    Gerrit-Has-Labels: No
                    Comment-In-Reply-To: Vlad Krot <vk...@google.com>
                    satisfied_requirement
                    unsatisfied_requirement
                    open
                    diffy

                    Vlad Krot (Gerrit)

                    unread,
                    Dec 2, 2025, 6:01:32 AM (6 days ago) Dec 2
                    to Omar Ramadan, Andrew Rayskiy, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                    Attention needed from Omar Ramadan and Reilly Grant

                    Vlad Krot added 2 comments

                    File content/browser/direct_sockets/direct_sockets_service_impl.cc
                    Line 176, Patchset 29 (Latest): if (!base::FeatureList::IsEnabled(
                    Vlad Krot . unresolved

                    Nit: I think it was easier just check this flag in restricted_udp_socket, the reason multicast was passed as a variable, because it had check for permission policy.

                    Line 182, Patchset 29 (Latest): // We don't require a separate permissions policy for SSM (see crbug.com/1520671).
                    Vlad Krot . unresolved

                    (see crbug.com/1520671).
                    How is this bug relevant here?

                    Open in Gerrit

                    Related details

                    Attention is currently required from:
                    • Omar Ramadan
                    • Reilly Grant
                    Submit Requirements:
                      • requirement satisfiedCode-Coverage
                      • requirement is not satisfiedCode-Owners
                      • requirement is not satisfiedCode-Review
                      • requirement is not satisfiedNo-Unresolved-Comments
                      • requirement is not satisfiedReview-Enforcement
                      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                      Gerrit-MessageType: comment
                      Gerrit-Project: chromium/src
                      Gerrit-Branch: main
                      Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                      Gerrit-Change-Number: 7186747
                      Gerrit-PatchSet: 29
                      Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                      Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                      Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                      Gerrit-CC: Andrew Rayskiy <green...@google.com>
                      Gerrit-CC: Kentaro Hara <har...@chromium.org>
                      Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                      Gerrit-CC: Simon Hangl <sim...@google.com>
                      Gerrit-Attention: Reilly Grant <rei...@chromium.org>
                      Gerrit-Attention: Omar Ramadan <om...@blockcast.net>
                      Gerrit-Comment-Date: Tue, 02 Dec 2025 11:01:14 +0000
                      Gerrit-HasComments: Yes
                      Gerrit-Has-Labels: No
                      satisfied_requirement
                      unsatisfied_requirement
                      open
                      diffy

                      Omar Ramadan (Gerrit)

                      unread,
                      Dec 2, 2025, 9:34:36 AM (5 days ago) Dec 2
                      to Andrew Rayskiy, AyeAye, Vlad Krot, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                      Attention needed from Reilly Grant and Vlad Krot

                      Omar Ramadan added 2 comments

                      File content/browser/direct_sockets/direct_sockets_service_impl.cc
                      Line 176, Patchset 29: if (!base::FeatureList::IsEnabled(
                      Vlad Krot . resolved

                      Nit: I think it was easier just check this flag in restricted_udp_socket, the reason multicast was passed as a variable, because it had check for permission policy.

                      Omar Ramadan

                      Done

                      Line 182, Patchset 29: // We don't require a separate permissions policy for SSM (see crbug.com/1520671).
                      Vlad Krot . resolved

                      (see crbug.com/1520671).
                      How is this bug relevant here?

                      Omar Ramadan

                      Done

                      Open in Gerrit

                      Related details

                      Attention is currently required from:
                      • Reilly Grant
                      • Vlad Krot
                      Submit Requirements:
                        • requirement satisfiedCode-Coverage
                        • requirement is not satisfiedCode-Owners
                        • requirement is not satisfiedCode-Review
                        • requirement is not satisfiedReview-Enforcement
                        Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                        Gerrit-MessageType: comment
                        Gerrit-Project: chromium/src
                        Gerrit-Branch: main
                        Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                        Gerrit-Change-Number: 7186747
                        Gerrit-PatchSet: 30
                        Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                        Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                        Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                        Gerrit-CC: Andrew Rayskiy <green...@google.com>
                        Gerrit-CC: Kentaro Hara <har...@chromium.org>
                        Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                        Gerrit-CC: Simon Hangl <sim...@google.com>
                        Gerrit-Attention: Reilly Grant <rei...@chromium.org>
                        Gerrit-Attention: Vlad Krot <vk...@google.com>
                        Gerrit-Comment-Date: Tue, 02 Dec 2025 14:34:21 +0000
                        Gerrit-HasComments: Yes
                        Gerrit-Has-Labels: No
                        Comment-In-Reply-To: Vlad Krot <vk...@google.com>
                        satisfied_requirement
                        unsatisfied_requirement
                        open
                        diffy

                        Vlad Krot (Gerrit)

                        unread,
                        Dec 2, 2025, 9:37:21 AM (5 days ago) Dec 2
                        to Omar Ramadan, Andrew Rayskiy, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                        Attention needed from Omar Ramadan and Reilly Grant

                        Vlad Krot voted Code-Review+1

                        Code-Review+1
                        Open in Gerrit

                        Related details

                        Attention is currently required from:
                        • Omar Ramadan
                        • Reilly Grant
                        Submit Requirements:
                        • requirement satisfiedCode-Coverage
                        • requirement is not satisfiedCode-Owners
                        • requirement is not satisfiedCode-Review
                        • requirement is not satisfiedReview-Enforcement
                        Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                        Gerrit-MessageType: comment
                        Gerrit-Project: chromium/src
                        Gerrit-Branch: main
                        Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                        Gerrit-Change-Number: 7186747
                        Gerrit-PatchSet: 30
                        Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                        Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                        Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                        Gerrit-CC: Andrew Rayskiy <green...@google.com>
                        Gerrit-CC: Kentaro Hara <har...@chromium.org>
                        Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                        Gerrit-CC: Simon Hangl <sim...@google.com>
                        Gerrit-Attention: Reilly Grant <rei...@chromium.org>
                        Gerrit-Attention: Omar Ramadan <om...@blockcast.net>
                        Gerrit-Comment-Date: Tue, 02 Dec 2025 14:36:50 +0000
                        Gerrit-HasComments: No
                        Gerrit-Has-Labels: Yes
                        satisfied_requirement
                        unsatisfied_requirement
                        open
                        diffy

                        Andrew Rayskiy (Gerrit)

                        unread,
                        Dec 2, 2025, 9:42:38 AM (5 days ago) Dec 2
                        to Omar Ramadan, Chromium LUCI CQ, Vlad Krot, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                        Attention needed from Omar Ramadan, Reilly Grant and Vlad Krot

                        Andrew Rayskiy added 1 comment

                        File content/browser/direct_sockets/direct_sockets_service_impl.cc
                        Line 762, Patchset 30 (Latest): IsMulticastAllowed(context_) &&
                        Andrew Rayskiy . unresolved

                        I don't think it's necessary to propagate this all the way down the stack; since all processes generally have the same launch flags, you can simply do

                        ```
                        if (source_address.has_value()) {
                        // Source-Specific Multicast (SSM)
                        if (!base::FeatureList::IsEnabled(blink::features::kSourceSpecificMulticastInDirectSockets)) {
                        // Calling this method with source_address without the SSM permission
                        // means that the renderer is sending faulty IPCs.

                        mojo::ReportBadMessage("no permission to use source-specific multicast");
                              return;
                        }
                        udp_socket_->JoinSourceGroup(group_address, *source_address,
                        std::move(callback));
                        } else {
                        // Any-Source Multicast (ASM)
                        udp_socket_->JoinGroup(group_address, std::move(callback));
                        }
                        ```

                        In your `restricted_udp_socket.cc`

                        Open in Gerrit

                        Related details

                        Attention is currently required from:
                        • Omar Ramadan
                        • Reilly Grant
                        • Vlad Krot
                        Submit Requirements:
                          • requirement satisfiedCode-Coverage
                          • requirement is not satisfiedCode-Owners
                          • requirement is not satisfiedCode-Review
                          • requirement is not satisfiedNo-Unresolved-Comments
                          • requirement is not satisfiedReview-Enforcement
                          Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                          Gerrit-MessageType: comment
                          Gerrit-Project: chromium/src
                          Gerrit-Branch: main
                          Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                          Gerrit-Change-Number: 7186747
                          Gerrit-PatchSet: 30
                          Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                          Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                          Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                          Gerrit-CC: Andrew Rayskiy <green...@google.com>
                          Gerrit-CC: Kentaro Hara <har...@chromium.org>
                          Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                          Gerrit-CC: Simon Hangl <sim...@google.com>
                          Gerrit-Attention: Reilly Grant <rei...@chromium.org>
                          Gerrit-Attention: Omar Ramadan <om...@blockcast.net>
                          Gerrit-Attention: Vlad Krot <vk...@google.com>
                          Gerrit-Comment-Date: Tue, 02 Dec 2025 14:42:10 +0000
                          Gerrit-HasComments: Yes
                          Gerrit-Has-Labels: No
                          satisfied_requirement
                          unsatisfied_requirement
                          open
                          diffy

                          Omar Ramadan (Gerrit)

                          unread,
                          Dec 2, 2025, 10:51:06 AM (5 days ago) Dec 2
                          to Chromium LUCI CQ, Vlad Krot, Andrew Rayskiy, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                          Attention needed from Andrew Rayskiy, Reilly Grant and Vlad Krot

                          Omar Ramadan added 1 comment

                          File content/browser/direct_sockets/direct_sockets_service_impl.cc
                          Line 762, Patchset 30 (Latest): IsMulticastAllowed(context_) &&
                          Andrew Rayskiy . unresolved

                          I don't think it's necessary to propagate this all the way down the stack; since all processes generally have the same launch flags, you can simply do

                          ```
                          if (source_address.has_value()) {
                          // Source-Specific Multicast (SSM)
                          if (!base::FeatureList::IsEnabled(blink::features::kSourceSpecificMulticastInDirectSockets)) {
                          // Calling this method with source_address without the SSM permission
                          // means that the renderer is sending faulty IPCs.
                          mojo::ReportBadMessage("no permission to use source-specific multicast");
                          return;
                          }
                          udp_socket_->JoinSourceGroup(group_address, *source_address,
                          std::move(callback));
                          } else {
                          // Any-Source Multicast (ASM)
                          udp_socket_->JoinGroup(group_address, std::move(callback));
                          }
                          ```

                          In your `restricted_udp_socket.cc`

                          Omar Ramadan

                          @green...@google.com if we can use `FeatureList::IsEnabled` directly in `restricted_udp_socket.cc` to check both multicast and source specific multicast, should I remove `allow_multicast` all together from `content/browser`? cc @vk...@google.com

                          Open in Gerrit

                          Related details

                          Attention is currently required from:
                          • Andrew Rayskiy
                          • Reilly Grant
                          • Vlad Krot
                          Gerrit-Attention: Andrew Rayskiy <green...@google.com>
                          Gerrit-Attention: Vlad Krot <vk...@google.com>
                          Gerrit-Comment-Date: Tue, 02 Dec 2025 15:50:44 +0000
                          Gerrit-HasComments: Yes
                          Gerrit-Has-Labels: No
                          Comment-In-Reply-To: Andrew Rayskiy <green...@google.com>
                          satisfied_requirement
                          unsatisfied_requirement
                          open
                          diffy

                          Vlad Krot (Gerrit)

                          unread,
                          Dec 2, 2025, 10:52:45 AM (5 days ago) Dec 2
                          to Omar Ramadan, Chromium LUCI CQ, Andrew Rayskiy, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                          Attention needed from Andrew Rayskiy, Omar Ramadan and Reilly Grant

                          Vlad Krot added 1 comment

                          File content/browser/direct_sockets/direct_sockets_service_impl.cc
                          Line 762, Patchset 30 (Latest): IsMulticastAllowed(context_) &&
                          Andrew Rayskiy . unresolved

                          I don't think it's necessary to propagate this all the way down the stack; since all processes generally have the same launch flags, you can simply do

                          ```
                          if (source_address.has_value()) {
                          // Source-Specific Multicast (SSM)
                          if (!base::FeatureList::IsEnabled(blink::features::kSourceSpecificMulticastInDirectSockets)) {
                          // Calling this method with source_address without the SSM permission
                          // means that the renderer is sending faulty IPCs.
                          mojo::ReportBadMessage("no permission to use source-specific multicast");
                          return;
                          }
                          udp_socket_->JoinSourceGroup(group_address, *source_address,
                          std::move(callback));
                          } else {
                          // Any-Source Multicast (ASM)
                          udp_socket_->JoinGroup(group_address, std::move(callback));
                          }
                          ```

                          In your `restricted_udp_socket.cc`

                          Omar Ramadan

                          @green...@google.com if we can use `FeatureList::IsEnabled` directly in `restricted_udp_socket.cc` to check both multicast and source specific multicast, should I remove `allow_multicast` all together from `content/browser`? cc @vk...@google.com

                          Vlad Krot

                          "should I remove allow_multicast all together from" - no, because AllowMulticast also contains result of permissions policy check for which you need ExecutionContext.

                          Open in Gerrit

                          Related details

                          Attention is currently required from:
                          • Andrew Rayskiy
                          • Omar Ramadan
                          • Reilly Grant
                          Gerrit-Attention: Omar Ramadan <om...@blockcast.net>
                          Gerrit-Attention: Andrew Rayskiy <green...@google.com>
                          Gerrit-Comment-Date: Tue, 02 Dec 2025 15:52:26 +0000
                          Gerrit-HasComments: Yes
                          Gerrit-Has-Labels: No
                          Comment-In-Reply-To: Omar Ramadan <om...@blockcast.net>
                          Comment-In-Reply-To: Andrew Rayskiy <green...@google.com>
                          satisfied_requirement
                          unsatisfied_requirement
                          open
                          diffy

                          Andrew Rayskiy (Gerrit)

                          unread,
                          Dec 2, 2025, 10:56:30 AM (5 days ago) Dec 2
                          to Omar Ramadan, Chromium LUCI CQ, Vlad Krot, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                          Attention needed from Omar Ramadan and Reilly Grant

                          Andrew Rayskiy added 1 comment

                          File content/browser/direct_sockets/direct_sockets_service_impl.cc
                          Line 762, Patchset 30 (Latest): IsMulticastAllowed(context_) &&
                          Andrew Rayskiy . unresolved

                          I don't think it's necessary to propagate this all the way down the stack; since all processes generally have the same launch flags, you can simply do

                          ```
                          if (source_address.has_value()) {
                          // Source-Specific Multicast (SSM)
                          if (!base::FeatureList::IsEnabled(blink::features::kSourceSpecificMulticastInDirectSockets)) {
                          // Calling this method with source_address without the SSM permission
                          // means that the renderer is sending faulty IPCs.
                          mojo::ReportBadMessage("no permission to use source-specific multicast");
                          return;
                          }
                          udp_socket_->JoinSourceGroup(group_address, *source_address,
                          std::move(callback));
                          } else {
                          // Any-Source Multicast (ASM)
                          udp_socket_->JoinGroup(group_address, std::move(callback));
                          }
                          ```

                          In your `restricted_udp_socket.cc`

                          Omar Ramadan

                          @green...@google.com if we can use `FeatureList::IsEnabled` directly in `restricted_udp_socket.cc` to check both multicast and source specific multicast, should I remove `allow_multicast` all together from `content/browser`? cc @vk...@google.com

                          Vlad Krot

                          "should I remove allow_multicast all together from" - no, because AllowMulticast also contains result of permissions policy check for which you need ExecutionContext.

                          Andrew Rayskiy

                          +1! allow_multicast is per-frame, FeatureList::IsEnabled is global

                          Open in Gerrit

                          Related details

                          Attention is currently required from:
                          • Omar Ramadan
                          • Reilly Grant
                          Gerrit-Comment-Date: Tue, 02 Dec 2025 15:56:05 +0000
                          Gerrit-HasComments: Yes
                          Gerrit-Has-Labels: No
                          Comment-In-Reply-To: Omar Ramadan <om...@blockcast.net>
                          Comment-In-Reply-To: Andrew Rayskiy <green...@google.com>
                          Comment-In-Reply-To: Vlad Krot <vk...@google.com>
                          satisfied_requirement
                          unsatisfied_requirement
                          open
                          diffy

                          Omar Ramadan (Gerrit)

                          unread,
                          Dec 2, 2025, 12:11:50 PM (5 days ago) Dec 2
                          to Chromium LUCI CQ, Vlad Krot, Andrew Rayskiy, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                          Attention needed from Andrew Rayskiy, Reilly Grant and Vlad Krot

                          Omar Ramadan added 1 comment

                          File content/browser/direct_sockets/direct_sockets_service_impl.cc
                          Line 762, Patchset 30: IsMulticastAllowed(context_) &&
                          Andrew Rayskiy . resolved

                          I don't think it's necessary to propagate this all the way down the stack; since all processes generally have the same launch flags, you can simply do

                          ```
                          if (source_address.has_value()) {
                          // Source-Specific Multicast (SSM)
                          if (!base::FeatureList::IsEnabled(blink::features::kSourceSpecificMulticastInDirectSockets)) {
                          // Calling this method with source_address without the SSM permission
                          // means that the renderer is sending faulty IPCs.
                          mojo::ReportBadMessage("no permission to use source-specific multicast");
                          return;
                          }
                          udp_socket_->JoinSourceGroup(group_address, *source_address,
                          std::move(callback));
                          } else {
                          // Any-Source Multicast (ASM)
                          udp_socket_->JoinGroup(group_address, std::move(callback));
                          }
                          ```

                          In your `restricted_udp_socket.cc`

                          Omar Ramadan

                          @green...@google.com if we can use `FeatureList::IsEnabled` directly in `restricted_udp_socket.cc` to check both multicast and source specific multicast, should I remove `allow_multicast` all together from `content/browser`? cc @vk...@google.com

                          Vlad Krot

                          "should I remove allow_multicast all together from" - no, because AllowMulticast also contains result of permissions policy check for which you need ExecutionContext.

                          Andrew Rayskiy

                          +1! allow_multicast is per-frame, FeatureList::IsEnabled is global

                          Omar Ramadan

                          Done

                          Open in Gerrit

                          Related details

                          Attention is currently required from:
                          • Andrew Rayskiy
                          • Reilly Grant
                          • Vlad Krot
                          Submit Requirements:
                            • requirement satisfiedCode-Coverage
                            • requirement is not satisfiedCode-Owners
                            • requirement is not satisfiedCode-Review
                            • requirement is not satisfiedReview-Enforcement
                            Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                            Gerrit-MessageType: comment
                            Gerrit-Project: chromium/src
                            Gerrit-Branch: main
                            Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                            Gerrit-Change-Number: 7186747
                            Gerrit-PatchSet: 31
                            Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                            Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                            Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                            Gerrit-CC: Andrew Rayskiy <green...@google.com>
                            Gerrit-CC: Kentaro Hara <har...@chromium.org>
                            Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                            Gerrit-CC: Simon Hangl <sim...@google.com>
                            Gerrit-Attention: Reilly Grant <rei...@chromium.org>
                            Gerrit-Attention: Andrew Rayskiy <green...@google.com>
                            Gerrit-Attention: Vlad Krot <vk...@google.com>
                            Gerrit-Comment-Date: Tue, 02 Dec 2025 17:11:31 +0000
                            satisfied_requirement
                            unsatisfied_requirement
                            open
                            diffy

                            Andrew Rayskiy (Gerrit)

                            unread,
                            Dec 2, 2025, 12:13:48 PM (5 days ago) Dec 2
                            to Omar Ramadan, Chromium LUCI CQ, Vlad Krot, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                            Attention needed from Omar Ramadan, Reilly Grant and Vlad Krot

                            Andrew Rayskiy voted Code-Review+1

                            Code-Review+1
                            Open in Gerrit

                            Related details

                            Attention is currently required from:
                            • Omar Ramadan
                            • Reilly Grant
                            • Vlad Krot
                            Submit Requirements:
                            • requirement satisfiedCode-Coverage
                            • requirement is not satisfiedCode-Owners
                            • requirement is not satisfiedCode-Review
                            • requirement is not satisfiedReview-Enforcement
                            Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                            Gerrit-MessageType: comment
                            Gerrit-Project: chromium/src
                            Gerrit-Branch: main
                            Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                            Gerrit-Change-Number: 7186747
                            Gerrit-PatchSet: 31
                            Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                            Gerrit-Reviewer: Andrew Rayskiy <green...@google.com>
                            Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                            Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                            Gerrit-CC: Kentaro Hara <har...@chromium.org>
                            Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                            Gerrit-CC: Simon Hangl <sim...@google.com>
                            Gerrit-Attention: Reilly Grant <rei...@chromium.org>
                            Gerrit-Attention: Omar Ramadan <om...@blockcast.net>
                            Gerrit-Attention: Vlad Krot <vk...@google.com>
                            Gerrit-Comment-Date: Tue, 02 Dec 2025 17:13:29 +0000
                            Gerrit-HasComments: No
                            Gerrit-Has-Labels: Yes
                            satisfied_requirement
                            unsatisfied_requirement
                            open
                            diffy

                            Vlad Krot (Gerrit)

                            unread,
                            Dec 3, 2025, 8:12:44 AM (5 days ago) Dec 3
                            to Omar Ramadan, Andrew Rayskiy, Chromium LUCI CQ, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                            Attention needed from Andrew Rayskiy, Omar Ramadan and Reilly Grant

                            Vlad Krot voted Code-Review+1

                            Code-Review+1
                            Open in Gerrit

                            Related details

                            Attention is currently required from:
                            • Andrew Rayskiy
                            • Omar Ramadan
                            • Reilly Grant
                            Submit Requirements:
                            • requirement satisfiedCode-Coverage
                            • requirement is not satisfiedCode-Owners
                            • requirement is not satisfiedCode-Review
                            • requirement is not satisfiedReview-Enforcement
                            Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                            Gerrit-MessageType: comment
                            Gerrit-Project: chromium/src
                            Gerrit-Branch: main
                            Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                            Gerrit-Change-Number: 7186747
                            Gerrit-PatchSet: 37
                            Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                            Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                            Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                            Gerrit-CC: Andrew Rayskiy <green...@google.com>
                            Gerrit-CC: Kentaro Hara <har...@chromium.org>
                            Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                            Gerrit-CC: Simon Hangl <sim...@google.com>
                            Gerrit-Attention: Reilly Grant <rei...@chromium.org>
                            Gerrit-Attention: Omar Ramadan <om...@blockcast.net>
                            Gerrit-Attention: Andrew Rayskiy <green...@google.com>
                            Gerrit-Comment-Date: Wed, 03 Dec 2025 13:12:20 +0000
                            Gerrit-HasComments: No
                            Gerrit-Has-Labels: Yes
                            satisfied_requirement
                            unsatisfied_requirement
                            open
                            diffy

                            Vlad Krot (Gerrit)

                            unread,
                            Dec 4, 2025, 6:30:52 AM (4 days ago) Dec 4
                            to Omar Ramadan, Andrew Rayskiy, Chromium LUCI CQ, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                            Attention needed from Andrew Rayskiy, Omar Ramadan and Reilly Grant

                            Vlad Krot added 1 comment

                            File third_party/blink/renderer/modules/direct_sockets/multicast_controller.h
                            Line 78, Patchset 38 (Latest): bool is_deleted = false;
                            Vlad Krot . unresolved

                            What is the reason for adding this?

                            Open in Gerrit

                            Related details

                            Attention is currently required from:
                            • Andrew Rayskiy
                            • Omar Ramadan
                            • Reilly Grant
                            Submit Requirements:
                              • requirement satisfiedCode-Coverage
                              • requirement is not satisfiedCode-Owners
                              • requirement is not satisfiedCode-Review
                              • requirement is not satisfiedNo-Unresolved-Comments
                              • requirement is not satisfiedReview-Enforcement
                              Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                              Gerrit-MessageType: comment
                              Gerrit-Project: chromium/src
                              Gerrit-Branch: main
                              Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                              Gerrit-Change-Number: 7186747
                              Gerrit-PatchSet: 38
                              Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                              Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                              Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                              Gerrit-CC: Andrew Rayskiy <green...@google.com>
                              Gerrit-CC: Kentaro Hara <har...@chromium.org>
                              Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                              Gerrit-CC: Simon Hangl <sim...@google.com>
                              Gerrit-Attention: Reilly Grant <rei...@chromium.org>
                              Gerrit-Attention: Omar Ramadan <om...@blockcast.net>
                              Gerrit-Attention: Andrew Rayskiy <green...@google.com>
                              Gerrit-Comment-Date: Thu, 04 Dec 2025 11:30:33 +0000
                              Gerrit-HasComments: Yes
                              Gerrit-Has-Labels: No
                              satisfied_requirement
                              unsatisfied_requirement
                              open
                              diffy

                              Omar Ramadan (Gerrit)

                              unread,
                              Dec 4, 2025, 7:27:13 AM (4 days ago) Dec 4
                              to Vlad Krot, Andrew Rayskiy, Chromium LUCI CQ, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                              Attention needed from Andrew Rayskiy, Reilly Grant and Vlad Krot

                              Omar Ramadan added 1 comment

                              File third_party/blink/renderer/modules/direct_sockets/multicast_controller.h
                              Line 78, Patchset 38 (Latest): bool is_deleted = false;
                              Vlad Krot . resolved

                              What is the reason for adding this?

                              Omar Ramadan

                              Blink's hash tables use open addressing so when a collision occurs, the table probes for the next available slot. To work correctly, the table needs to distinguish between three states for each slot (empty/deleted/valid). If you simply marked deleted slots as "empty," you'd break the probing chain. The `is_deleted` acts as a sentinel to differentiate deleted entries as `true` while an invalid/empty IP address `false`

                              Open in Gerrit

                              Related details

                              Attention is currently required from:
                              • Andrew Rayskiy
                              • Reilly Grant
                              • Vlad Krot
                              Submit Requirements:
                                • requirement satisfiedCode-Coverage
                                • requirement is not satisfiedCode-Owners
                                • requirement is not satisfiedCode-Review
                                • requirement is not satisfiedReview-Enforcement
                                Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                                Gerrit-MessageType: comment
                                Gerrit-Project: chromium/src
                                Gerrit-Branch: main
                                Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                                Gerrit-Change-Number: 7186747
                                Gerrit-PatchSet: 38
                                Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                                Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                                Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                                Gerrit-CC: Andrew Rayskiy <green...@google.com>
                                Gerrit-CC: Kentaro Hara <har...@chromium.org>
                                Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                                Gerrit-CC: Simon Hangl <sim...@google.com>
                                Gerrit-Attention: Reilly Grant <rei...@chromium.org>
                                Gerrit-Attention: Andrew Rayskiy <green...@google.com>
                                Gerrit-Attention: Vlad Krot <vk...@google.com>
                                Gerrit-Comment-Date: Thu, 04 Dec 2025 12:26:54 +0000
                                Gerrit-HasComments: Yes
                                Gerrit-Has-Labels: No
                                Comment-In-Reply-To: Vlad Krot <vk...@google.com>
                                satisfied_requirement
                                unsatisfied_requirement
                                open
                                diffy

                                gwsq (Gerrit)

                                unread,
                                Dec 5, 2025, 5:51:47 PM (2 days ago) Dec 5
                                to Omar Ramadan, Chromium IPC Reviews, Tom Sepez, David Schinazi, Vlad Krot, Andrew Rayskiy, Chromium LUCI CQ, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                                Attention needed from Andrew Rayskiy, David Schinazi, Reilly Grant, Tom Sepez and Vlad Krot

                                Message from gwsq

                                From googleclient/chrome/chromium_gwsq/ipc/config.gwsq:
                                IPC: tse...@chromium.org

                                📎 It looks like you’re making a possibly security-sensitive change! 📎 IPC security review isn’t a rubberstamp, so your friendly security reviewer will need a fair amount of context to review your CL effectively. Please review your CL description and code comments to make sure they provide context for someone unfamiliar with your project/area. Pay special attention to where data comes from and which processes it flows between (and their privilege levels). Feel free to point your security reviewer at design docs, bugs, or other links if you can’t reasonably make a self-contained CL description. (Also see https://cbea.ms/git-commit/).

                                IPC reviewer(s): tse...@chromium.org


                                Reviewer source(s):
                                tse...@chromium.org is from context(googleclient/chrome/chromium_gwsq/ipc/config.gwsq)

                                Open in Gerrit

                                Related details

                                Attention is currently required from:
                                • Andrew Rayskiy
                                • David Schinazi
                                • Reilly Grant
                                • Tom Sepez
                                • Vlad Krot
                                Submit Requirements:
                                • requirement satisfiedCode-Coverage
                                • requirement is not satisfiedCode-Owners
                                • requirement is not satisfiedCode-Review
                                • requirement is not satisfiedReview-Enforcement
                                Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                                Gerrit-MessageType: comment
                                Gerrit-Project: chromium/src
                                Gerrit-Branch: main
                                Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                                Gerrit-Change-Number: 7186747
                                Gerrit-PatchSet: 41
                                Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                                Gerrit-Reviewer: David Schinazi <dsch...@chromium.org>
                                Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                                Gerrit-Reviewer: Tom Sepez <tse...@chromium.org>
                                Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                                Gerrit-CC: Andrew Rayskiy <green...@google.com>
                                Gerrit-CC: Chromium IPC Reviews <chrome-ip...@google.com>
                                Gerrit-CC: Kentaro Hara <har...@chromium.org>
                                Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                                Gerrit-CC: Simon Hangl <sim...@google.com>
                                Gerrit-CC: gwsq
                                Gerrit-Attention: Tom Sepez <tse...@chromium.org>
                                Gerrit-Attention: Reilly Grant <rei...@chromium.org>
                                Gerrit-Attention: Andrew Rayskiy <green...@google.com>
                                Gerrit-Attention: David Schinazi <dsch...@chromium.org>
                                Gerrit-Attention: Vlad Krot <vk...@google.com>
                                Gerrit-Comment-Date: Fri, 05 Dec 2025 22:51:40 +0000
                                Gerrit-HasComments: No
                                Gerrit-Has-Labels: No
                                satisfied_requirement
                                unsatisfied_requirement
                                open
                                diffy

                                Reilly Grant (Gerrit)

                                unread,
                                Dec 5, 2025, 9:00:45 PM (2 days ago) Dec 5
                                to Omar Ramadan, Chromium IPC Reviews, Tom Sepez, David Schinazi, Vlad Krot, Andrew Rayskiy, Chromium LUCI CQ, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                                Attention needed from Andrew Rayskiy, David Schinazi, Omar Ramadan, Tom Sepez and Vlad Krot

                                Reilly Grant added 2 comments

                                File services/network/restricted_udp_socket.cc
                                Line 48, Patchset 41 (Latest): // Calling this method with source_address without the SSM permission
                                Reilly Grant . unresolved
                                ```suggestion
                                // Calling this method with source_address without the SSM feature enabled
                                ```
                                Line 50, Patchset 41 (Latest): mojo::ReportBadMessage("no permission to use source-specific multicast");
                                Reilly Grant . unresolved
                                This isn't a permissions thing.
                                ```suggestion
                                mojo::ReportBadMessage("Source-specific multicast disabled");
                                ```
                                Open in Gerrit

                                Related details

                                Attention is currently required from:
                                • Andrew Rayskiy
                                • David Schinazi
                                • Omar Ramadan
                                • Tom Sepez
                                • Vlad Krot
                                Submit Requirements:
                                  • requirement satisfiedCode-Coverage
                                  • requirement is not satisfiedCode-Owners
                                  • requirement is not satisfiedCode-Review
                                  • requirement is not satisfiedNo-Unresolved-Comments
                                  • requirement is not satisfiedReview-Enforcement
                                  Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                                  Gerrit-MessageType: comment
                                  Gerrit-Project: chromium/src
                                  Gerrit-Branch: main
                                  Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                                  Gerrit-Change-Number: 7186747
                                  Gerrit-PatchSet: 41
                                  Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                                  Gerrit-Reviewer: David Schinazi <dsch...@chromium.org>
                                  Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                                  Gerrit-Reviewer: Tom Sepez <tse...@chromium.org>
                                  Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                                  Gerrit-CC: Andrew Rayskiy <green...@google.com>
                                  Gerrit-CC: Chromium IPC Reviews <chrome-ip...@google.com>
                                  Gerrit-CC: Kentaro Hara <har...@chromium.org>
                                  Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                                  Gerrit-CC: Simon Hangl <sim...@google.com>
                                  Gerrit-CC: gwsq
                                  Gerrit-Attention: Tom Sepez <tse...@chromium.org>
                                  Gerrit-Attention: Omar Ramadan <om...@blockcast.net>
                                  Gerrit-Attention: Andrew Rayskiy <green...@google.com>
                                  Gerrit-Attention: David Schinazi <dsch...@chromium.org>
                                  Gerrit-Attention: Vlad Krot <vk...@google.com>
                                  Gerrit-Comment-Date: Sat, 06 Dec 2025 02:00:35 +0000
                                  Gerrit-HasComments: Yes
                                  Gerrit-Has-Labels: No
                                  satisfied_requirement
                                  unsatisfied_requirement
                                  open
                                  diffy

                                  Omar Ramadan (Gerrit)

                                  unread,
                                  Dec 6, 2025, 7:07:58 AM (yesterday) Dec 6
                                  to Chromium IPC Reviews, Tom Sepez, David Schinazi, Vlad Krot, Andrew Rayskiy, Chromium LUCI CQ, AyeAye, Reilly Grant, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Simon Hangl, fenced-fra...@chromium.org, asvitki...@chromium.org, kinuko...@chromium.org, bnc+...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, net-r...@chromium.org, network-ser...@chromium.org, rmcelra...@chromium.org
                                  Attention needed from Andrew Rayskiy, David Schinazi, Reilly Grant, Tom Sepez and Vlad Krot

                                  Omar Ramadan added 3 comments

                                  Omar Ramadan . resolved

                                  thank you

                                  File services/network/restricted_udp_socket.cc
                                  Line 48, Patchset 41 (Latest): // Calling this method with source_address without the SSM permission
                                  Reilly Grant . resolved
                                  ```suggestion
                                  // Calling this method with source_address without the SSM feature enabled
                                  ```
                                  Omar Ramadan

                                  Fix applied.

                                  Line 50, Patchset 41 (Latest): mojo::ReportBadMessage("no permission to use source-specific multicast");
                                  Reilly Grant . resolved
                                  This isn't a permissions thing.
                                  ```suggestion
                                  mojo::ReportBadMessage("Source-specific multicast disabled");
                                  ```
                                  Omar Ramadan

                                  Fix applied.

                                  Open in Gerrit

                                  Related details

                                  Attention is currently required from:
                                  • Andrew Rayskiy
                                  • David Schinazi
                                  • Reilly Grant
                                  • Tom Sepez
                                  • Vlad Krot
                                  Submit Requirements:
                                    • requirement satisfiedCode-Coverage
                                    • requirement is not satisfiedCode-Owners
                                    • requirement is not satisfiedCode-Review
                                    • requirement is not satisfiedReview-Enforcement
                                    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                                    Gerrit-MessageType: comment
                                    Gerrit-Project: chromium/src
                                    Gerrit-Branch: main
                                    Gerrit-Change-Id: Ia399ebcdbae425b1b89089eb5bcebbc5e8fa8d45
                                    Gerrit-Change-Number: 7186747
                                    Gerrit-PatchSet: 41
                                    Gerrit-Owner: Omar Ramadan <om...@blockcast.net>
                                    Gerrit-Reviewer: David Schinazi <dsch...@chromium.org>
                                    Gerrit-Reviewer: Reilly Grant <rei...@chromium.org>
                                    Gerrit-Reviewer: Tom Sepez <tse...@chromium.org>
                                    Gerrit-Reviewer: Vlad Krot <vk...@google.com>
                                    Gerrit-CC: Andrew Rayskiy <green...@google.com>
                                    Gerrit-CC: Chromium IPC Reviews <chrome-ip...@google.com>
                                    Gerrit-CC: Kentaro Hara <har...@chromium.org>
                                    Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                                    Gerrit-CC: Simon Hangl <sim...@google.com>
                                    Gerrit-CC: gwsq
                                    Gerrit-Attention: Tom Sepez <tse...@chromium.org>
                                    Gerrit-Attention: Reilly Grant <rei...@chromium.org>
                                    Gerrit-Attention: Andrew Rayskiy <green...@google.com>
                                    Gerrit-Attention: David Schinazi <dsch...@chromium.org>
                                    Gerrit-Attention: Vlad Krot <vk...@google.com>
                                    Gerrit-Comment-Date: Sat, 06 Dec 2025 12:07:36 +0000
                                    Gerrit-HasComments: Yes
                                    Gerrit-Has-Labels: No
                                    Comment-In-Reply-To: Reilly Grant <rei...@chromium.org>
                                    satisfied_requirement
                                    unsatisfied_requirement
                                    open
                                    diffy
                                    Reply all
                                    Reply to author
                                    Forward
                                    0 new messages