mirror of
https://github.com/torvalds/linux.git
synced 2024-12-04 01:51:34 +00:00
[NETNS][RAW]: Eliminate explicit init_net references.
Happily, in all the rest places (->bind callbacks only), that require the struct net, we have a socket, so get the net from it. Signed-off-by: Pavel Emelyanov <xemul@openvz.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
f51d599fbe
commit
e5ba31f11f
@ -625,7 +625,7 @@ static int raw_bind(struct sock *sk, struct sockaddr *uaddr, int addr_len)
|
||||
|
||||
if (sk->sk_state != TCP_CLOSE || addr_len < sizeof(struct sockaddr_in))
|
||||
goto out;
|
||||
chk_addr_ret = inet_addr_type(&init_net, addr->sin_addr.s_addr);
|
||||
chk_addr_ret = inet_addr_type(sk->sk_net, addr->sin_addr.s_addr);
|
||||
ret = -EADDRNOTAVAIL;
|
||||
if (addr->sin_addr.s_addr && chk_addr_ret != RTN_LOCAL &&
|
||||
chk_addr_ret != RTN_MULTICAST && chk_addr_ret != RTN_BROADCAST)
|
||||
|
@ -291,7 +291,7 @@ static int rawv6_bind(struct sock *sk, struct sockaddr *uaddr, int addr_len)
|
||||
if (!sk->sk_bound_dev_if)
|
||||
goto out;
|
||||
|
||||
dev = dev_get_by_index(&init_net, sk->sk_bound_dev_if);
|
||||
dev = dev_get_by_index(sk->sk_net, sk->sk_bound_dev_if);
|
||||
if (!dev) {
|
||||
err = -ENODEV;
|
||||
goto out;
|
||||
@ -304,7 +304,7 @@ static int rawv6_bind(struct sock *sk, struct sockaddr *uaddr, int addr_len)
|
||||
v4addr = LOOPBACK4_IPV6;
|
||||
if (!(addr_type & IPV6_ADDR_MULTICAST)) {
|
||||
err = -EADDRNOTAVAIL;
|
||||
if (!ipv6_chk_addr(&init_net, &addr->sin6_addr,
|
||||
if (!ipv6_chk_addr(sk->sk_net, &addr->sin6_addr,
|
||||
dev, 0)) {
|
||||
if (dev)
|
||||
dev_put(dev);
|
||||
|
Loading…
Reference in New Issue
Block a user