diff options
author | gVisor bot <gvisor-bot@google.com> | 2021-01-06 22:10:21 +0000 |
---|---|---|
committer | gVisor bot <gvisor-bot@google.com> | 2021-01-06 22:10:21 +0000 |
commit | 21d0bede2ccbbbf2775a177d2963b6deb6e77822 (patch) | |
tree | cb46f8b2d398f0aebb5503274c2999df4d2aa534 /pkg | |
parent | 18201bb435965cc576f2144b64b0bb41c9bd7dce (diff) | |
parent | 7817e3b5e4202eb2001806b5043052a2f5b591a4 (diff) |
Merge release-20201208.0-118-g7817e3b5e (automated)
Diffstat (limited to 'pkg')
-rw-r--r-- | pkg/tcpip/link/ethernet/ethernet.go | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/pkg/tcpip/link/ethernet/ethernet.go b/pkg/tcpip/link/ethernet/ethernet.go index beefcd008..89e3e6164 100644 --- a/pkg/tcpip/link/ethernet/ethernet.go +++ b/pkg/tcpip/link/ethernet/ethernet.go @@ -49,10 +49,10 @@ func (e *Endpoint) DeliverNetworkPacket(_, _ tcpip.LinkAddress, _ tcpip.NetworkP return } + // Note, there is no need to check the destination link address here since + // the ethernet hardware filters frames based on their destination addresses. eth := header.Ethernet(hdr) - if dst := eth.DestinationAddress(); dst == e.Endpoint.LinkAddress() || dst == header.EthernetBroadcastAddress || header.IsMulticastEthernetAddress(dst) { - e.Endpoint.DeliverNetworkPacket(eth.SourceAddress() /* remote */, dst /* local */, eth.Type() /* protocol */, pkt) - } + e.Endpoint.DeliverNetworkPacket(eth.SourceAddress() /* remote */, eth.DestinationAddress() /* local */, eth.Type() /* protocol */, pkt) } // Capabilities implements stack.LinkEndpoint. |