Skip to content

Commit

Permalink
[NETNS]: Make arp code network namespace consistent.
Browse files Browse the repository at this point in the history
Some calls in the arp.c have network namespace as an argument. Getting
init_net inside these functions is simply inconsistent. Fix this.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Denis V. Lunev authored and David S. Miller committed Jan 28, 2008
1 parent a79878f commit 2db82b5
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions net/ipv4/arp.c
Original file line number Diff line number Diff line change
Expand Up @@ -973,13 +973,13 @@ static int arp_req_set_public(struct net *net, struct arpreq *r,
if (mask && mask != htonl(0xFFFFFFFF))
return -EINVAL;
if (!dev && (r->arp_flags & ATF_COM)) {
dev = dev_getbyhwaddr(&init_net, r->arp_ha.sa_family,
dev = dev_getbyhwaddr(net, r->arp_ha.sa_family,
r->arp_ha.sa_data);
if (!dev)
return -ENODEV;
}
if (mask) {
if (pneigh_lookup(&arp_tbl, &init_net, &ip, dev, 1) == NULL)
if (pneigh_lookup(&arp_tbl, net, &ip, dev, 1) == NULL)
return -ENOBUFS;
return 0;
}
Expand Down Expand Up @@ -1088,7 +1088,7 @@ static int arp_req_delete_public(struct net *net, struct arpreq *r,
__be32 mask = ((struct sockaddr_in *)&r->arp_netmask)->sin_addr.s_addr;

if (mask == htonl(0xFFFFFFFF))
return pneigh_delete(&arp_tbl, &init_net, &ip, dev);
return pneigh_delete(&arp_tbl, net, &ip, dev);

if (mask)
return -EINVAL;
Expand Down Expand Up @@ -1166,7 +1166,7 @@ int arp_ioctl(struct net *net, unsigned int cmd, void __user *arg)
rtnl_lock();
if (r.arp_dev[0]) {
err = -ENODEV;
if ((dev = __dev_get_by_name(&init_net, r.arp_dev)) == NULL)
if ((dev = __dev_get_by_name(net, r.arp_dev)) == NULL)
goto out;

/* Mmmm... It is wrong... ARPHRD_NETROM==0 */
Expand Down

0 comments on commit 2db82b5

Please sign in to comment.