From e84d017f864f996c48a975fc70994c4fbb575f9e Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Wed, 7 Feb 2024 08:50:57 -0500 Subject: [PATCH] MT#55283 set skb->dev Since skb is a copy of the ingress skb, ->dev still points to the device the packet was received on. For sending, set it to the outgoing device, taken from the dst object. Change-Id: Ia27b4318925dec4396e485a389d818dd46bcac78 (cherry picked from commit fa37be0625814ab4b38436ea85a50a4198e161b7) --- kernel-module/xt_RTPENGINE.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/kernel-module/xt_RTPENGINE.c b/kernel-module/xt_RTPENGINE.c index feda7b793..0203c9d4a 100644 --- a/kernel-module/xt_RTPENGINE.c +++ b/kernel-module/xt_RTPENGINE.c @@ -4028,6 +4028,7 @@ static int send_proxy_packet4(struct sk_buff *skb, struct re_address *src, struc if (skb_dst(skb)->error) goto drop; + skb->dev = skb_dst(skb)->dev; skb->ip_summed = CHECKSUM_NONE; @@ -4138,6 +4139,7 @@ static int send_proxy_packet6(struct sk_buff *skb, struct re_address *src, struc } skb_dst_drop(skb); skb_dst_set(skb, dst_entry); + skb->dev = skb_dst(skb)->dev; skb->ip_summed = CHECKSUM_NONE;