net: fix dev_fill_forward_path with pppoe + bridge
authorFelix Fietkau <nbd@nbd.name>
Mon, 9 May 2022 12:26:15 +0000 (14:26 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 16 May 2022 10:58:55 +0000 (12:58 +0200)
commitcf2df74e202d81b09f09d84c2d8903e0e87e9274
treec9c35f8edca78eae03688115ce9cb5ea9993fdd5
parent45ca3e61999e9a30ca2b7cfbf9da8a9f8d13be31
net: fix dev_fill_forward_path with pppoe + bridge

When calling dev_fill_forward_path on a pppoe device, the provided destination
address is invalid. In order for the bridge fdb lookup to succeed, the pppoe
code needs to update ctx->daddr to the correct value.
Fix this by storing the address inside struct net_device_path_ctx

Fixes: f6efc675c9dd ("net: ppp: resolve forwarding path for bridge pppoe devices")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
drivers/net/ppp/pppoe.c
include/linux/netdevice.h
net/core/dev.c