mirror of
https://github.com/torvalds/linux
synced 2024-09-21 19:47:35 +00:00
net: Fix oops in dev_ifsioc()
A command like this: "brctl addif br1 eth1" issued as a user gave me an oops when bridge module wasn't loaded. It's caused by using a dev pointer before checking for NULL. Signed-off-by: Jarek Poplawski <jarkao2@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
d3d317092b
commit
5f2f6da76c
|
@ -3745,11 +3745,13 @@ static int dev_ifsioc(struct net *net, struct ifreq *ifr, unsigned int cmd)
|
||||||
{
|
{
|
||||||
int err;
|
int err;
|
||||||
struct net_device *dev = __dev_get_by_name(net, ifr->ifr_name);
|
struct net_device *dev = __dev_get_by_name(net, ifr->ifr_name);
|
||||||
const struct net_device_ops *ops = dev->netdev_ops;
|
const struct net_device_ops *ops;
|
||||||
|
|
||||||
if (!dev)
|
if (!dev)
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
|
||||||
|
ops = dev->netdev_ops;
|
||||||
|
|
||||||
switch (cmd) {
|
switch (cmd) {
|
||||||
case SIOCSIFFLAGS: /* Set interface flags */
|
case SIOCSIFFLAGS: /* Set interface flags */
|
||||||
return dev_change_flags(dev, ifr->ifr_flags);
|
return dev_change_flags(dev, ifr->ifr_flags);
|
||||||
|
|
Loading…
Reference in a new issue