From: Pavel Emelyanov Date: Mon, 14 Apr 2008 05:30:43 +0000 (-0700) Subject: [NETNS][DCCPV4]: Make per-net socket lookup. X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=b9901a84c98fe27c6a598c0f3ec944a7f17a5f97;p=openwrt%2Fstaging%2Fblogic.git [NETNS][DCCPV4]: Make per-net socket lookup. The inet_lookup family of functions requires a net to lookup a socket in, so give a proper one to them. Signed-off-by: Pavel Emelyanov Acked-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller --- diff --git a/net/dccp/ipv4.c b/net/dccp/ipv4.c index 11d0b8589aa7..66f860b1b916 100644 --- a/net/dccp/ipv4.c +++ b/net/dccp/ipv4.c @@ -211,8 +211,9 @@ static void dccp_v4_err(struct sk_buff *skb, u32 info) return; } - sk = inet_lookup(&init_net, &dccp_hashinfo, iph->daddr, dh->dccph_dport, - iph->saddr, dh->dccph_sport, inet_iif(skb)); + sk = inet_lookup(dev_net(skb->dev), &dccp_hashinfo, + iph->daddr, dh->dccph_dport, + iph->saddr, dh->dccph_sport, inet_iif(skb)); if (sk == NULL) { ICMP_INC_STATS_BH(ICMP_MIB_INERRORS); return; @@ -429,7 +430,7 @@ static struct sock *dccp_v4_hnd_req(struct sock *sk, struct sk_buff *skb) if (req != NULL) return dccp_check_req(sk, skb, req, prev); - nsk = inet_lookup_established(&init_net, &dccp_hashinfo, + nsk = inet_lookup_established(sock_net(sk), &dccp_hashinfo, iph->saddr, dh->dccph_sport, iph->daddr, dh->dccph_dport, inet_iif(skb)); @@ -810,7 +811,7 @@ static int dccp_v4_rcv(struct sk_buff *skb) /* Step 2: * Look up flow ID in table and get corresponding socket */ - sk = __inet_lookup(&init_net, &dccp_hashinfo, + sk = __inet_lookup(dev_net(skb->dst->dev), &dccp_hashinfo, iph->saddr, dh->dccph_sport, iph->daddr, dh->dccph_dport, inet_iif(skb)); /*