google / google/gvisor

Support `IP_MULTICAST_ALL` socket option

Open
#3,977 0 comments 0 reactions 0 assignees View on GitHub
area: networking type: enhancement
Dominant language
Go
Stars
19.3k
Forks
2k
Avg merge
3d 5h
Merged PRs (30d)
264

Description

https://www.man7.org/linux/man-pages/man7/ip.7.html

On the current implementation all wildcard address bound UDP sockets will receive multicast traffic from all multicast addresses a node has joined. We should be allowed to disable this (and only receive traffic from addresses a socket explicitly joined) with the `IP_MULTICAST_ALL` socket option.

```
IP_MULTICAST_ALL (since Linux 2.6.31)
This option can be used to modify the delivery policy of mul‐
ticast messages to sockets bound to the wildcard INADDR_ANY
address. The argument is a boolean integer (defaults to 1).
If set to 1, the socket will receive messages from all the
groups that have been joined globally on the whole system.
Otherwise, it will deliver messages only from the groups that
have been explicitly joined (for example via the IP_ADD_MEM‐
BERSHIP option) on this particular socket.
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.