HomeFreeBSD

* Deal with ARCNET L2 multicast mapping for IPv6 the same way as in IPv4:

Description

  • Deal with ARCNET L2 multicast mapping for IPv6 the same way as in IPv4: handle it in arc_output() instead of nd6_storelladdr().
  • Remove IFT_ARCNET check from arpresolve() since arc_output() does not use arpresolve() to handle broadcast/multicast. This check was there since r84931. It looks like it was not used since r89099 (initial import of Arcnet support where multicast is handled separately).
  • Remove IFT_IEEE1394 case from nd6_storelladdr() since firewire_output() calles nd6_storelladdr() for unicast addresses only.
  • Remove IFT_ARCNET case from nd6_storelladdr() since arc_output() now handles multicast by itself.

As a result, we have the following pattern: all non-ethernet-style
media have their own multicast map handling inside their appropriate
routines. On the other hand, arpresolve() (and nd6_storelladdr()) which
meant to be 'generic' ones de-facto handles ethernet-only multicast maps.

MFC after: 3 weeks

Details

Provenance
melifaroAuthored on
Parents
rS276885: Use nitems().
Branches
Unknown
Tags
Unknown

Event Timeline