diff --git a/net/ipv4/udp.c b/net/ipv4/udp.c index 3e146ebdf973221d1b4e8c632e5b57f79f4bc86e..226989bda6af659f6f4e89d8f76a18677b539255 100644 --- a/net/ipv4/udp.c +++ b/net/ipv4/udp.c @@ -539,7 +539,11 @@ static inline struct sock *__udp4_lib_lookup_skb(struct sk_buff *skb, struct sock *udp4_lib_lookup_skb(struct sk_buff *skb, __be16 sport, __be16 dport) { - return __udp4_lib_lookup_skb(skb, sport, dport, &udp_table); + const struct iphdr *iph = ip_hdr(skb); + + return __udp4_lib_lookup(dev_net(skb->dev), iph->saddr, sport, + iph->daddr, dport, inet_iif(skb), + inet_sdif(skb), &udp_table, NULL); } EXPORT_SYMBOL_GPL(udp4_lib_lookup_skb); diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c index f911d52650094c3acf42e6e8d69b58664857e1b3..6879012269ca23601547c0b744aa2afa22b67b44 100644 --- a/net/ipv6/udp.c +++ b/net/ipv6/udp.c @@ -278,7 +278,7 @@ struct sock *udp6_lib_lookup_skb(struct sk_buff *skb, return __udp6_lib_lookup(dev_net(skb->dev), &iph->saddr, sport, &iph->daddr, dport, inet6_iif(skb), - inet6_sdif(skb), &udp_table, skb); + inet6_sdif(skb), &udp_table, NULL); } EXPORT_SYMBOL_GPL(udp6_lib_lookup_skb);