diff --git a/net/ipv4/udp.c b/net/ipv4/udp.c index 2aacf2b34834..110af0e7dc7b 100644 --- a/net/ipv4/udp.c +++ b/net/ipv4/udp.c @@ -2416,7 +2416,8 @@ int udp_v4_early_demux(struct sk_buff *skb) */ if (!inet_sk(sk)->inet_daddr && in_dev) return ip_mc_validate_source(skb, iph->daddr, - iph->saddr, iph->tos, + iph->saddr, + iph->tos & IPTOS_RT_MASK, skb->dev, in_dev, &itag); } return 0;