OSDN Git Service

Bluetooth: 6lowpan: search for destination address in all peers
authorJosua Mayer <josua.mayer@jm0.eu>
Sat, 6 Jul 2019 15:54:46 +0000 (17:54 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 4 Aug 2019 07:34:49 +0000 (09:34 +0200)
commit233f5ed27bc04d9958dd23da61f50af3ffd38315
tree5f541d56586f1a35749c54a15ba628a12932708d
parentf65cbc7837eb09da1cd48beb61b3cc385aaed997
Bluetooth: 6lowpan: search for destination address in all peers

[ Upstream commit b188b03270b7f8568fc714101ce82fbf5e811c5a ]

Handle overlooked case where the target address is assigned to a peer
and neither route nor gateway exist.

For one peer, no checks are performed to see if it is meant to receive
packets for a given address.

As soon as there is a second peer however, checks are performed
to deal with routes and gateways for handling complex setups with
multiple hops to a target address.
This logic assumed that no route and no gateway imply that the
destination address can not be reached, which is false in case of a
direct peer.

Acked-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Tested-by: Michael Scott <mike@foundries.io>
Signed-off-by: Josua Mayer <josua.mayer@jm0.eu>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/bluetooth/6lowpan.c