Commit 1c4f0197323254e463b642abf2c8361e2a924859

Authored by Daniel Lezcano
Committed by David S. Miller
1 parent 31f634a63d

packet : remove init_net restriction

The af_packet protocol is used by Perl to do ioctls as reported by
Stephane Riviere:

"Net::RawIP relies on SIOCGIFADDR et SIOCGIFHWADDR to get the IP and MAC
addresses of the network interface."

But in a new network namespace these ioctl fail because it is disabled for
a namespace different from the init_net_ns.

These two lines should not be there as af_inet and af_packet are
namespace aware since a long time now. I suppose we forget to remove these
lines because we sent the af_packet first, before af_inet was supported.

Signed-off-by: Daniel Lezcano <daniel.lezcano@free.fr>
Reported-by: Stephane Riviere <stephane.riviere@regis-dgac.net>
Signed-off-by: David S. Miller <davem@davemloft.net>

Showing 1 changed file with 0 additions and 2 deletions Side-by-side Diff

net/packet/af_packet.c
... ... @@ -2169,8 +2169,6 @@
2169 2169 case SIOCGIFDSTADDR:
2170 2170 case SIOCSIFDSTADDR:
2171 2171 case SIOCSIFFLAGS:
2172   - if (!net_eq(sock_net(sk), &init_net))
2173   - return -ENOIOCTLCMD;
2174 2172 return inet_dgram_ops.ioctl(sock, cmd, arg);
2175 2173 #endif
2176 2174