smoltcp-rs / smoltcp

a smol tcp/ip stack
BSD Zero Clause License
3.63k stars 402 forks source link

Implement `join/leave_multicast_group()` for IPv6 #914

Closed lucasvr closed 1 month ago

lucasvr commented 2 months ago

This patch rebases @jgallagher's PR #602 to the tip of the main branch, adding support for IPv6 multicast groups.

As in the original PR, it is possible to join groups by sending an initial MLDv2 Report packet. In addition to PR #602, this PR also implements leave_multicast_group().

It is not yet possible to resend the change report or respond to queries.

codecov[bot] commented 2 months ago

Codecov Report

Attention: Patch coverage is 94.32314% with 13 lines in your changes are missing coverage. Please review.

Project coverage is 79.97%. Comparing base (4c27918) to head (6c06cd9). Report is 10 commits behind head on main.

:exclamation: Current head 6c06cd9 differs from pull request most recent head 20aa66b. Consider uploading reports for the commit 20aa66b to get more accurate results

Files Patch % Lines
src/iface/interface/igmp.rs 86.20% 4 Missing :warning:
src/iface/packet.rs 86.66% 4 Missing :warning:
src/iface/interface/ipv6.rs 94.91% 3 Missing :warning:
src/wire/ipv6option.rs 96.49% 2 Missing :warning:
Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #914 +/- ## ========================================== + Coverage 79.96% 79.97% +0.01% ========================================== Files 82 81 -1 Lines 28378 27831 -547 ========================================== - Hits 22693 22259 -434 + Misses 5685 5572 -113 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

lucasvr commented 2 months ago

Folks, I would appreciate if someone could review this PR. For symmetry, in addition to @jgallagher's original pull request, this PR implements leave_multicast_group(). This pair of functions is enough to commission and control devices that use the Matter protocol.

thvdveld commented 1 month ago

I think we can merge this now. Thank you for your PR!