mirror of https://gitee.com/openkylin/linux.git
mac802154: protect address changes via ioctl
This patch adds a netif_running check while trying to change the address attributes via ioctl. While netif_running is true these attributes should be only readable. Signed-off-by: Alexander Aring <alex.aring@gmail.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
parent
87023e1058
commit
f7cb96f105
|
@ -63,6 +63,8 @@ mac802154_wpan_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
|
|||
(struct sockaddr_ieee802154 *)&ifr->ifr_addr;
|
||||
int err = -ENOIOCTLCMD;
|
||||
|
||||
ASSERT_RTNL();
|
||||
|
||||
spin_lock_bh(&sdata->mib_lock);
|
||||
|
||||
switch (cmd) {
|
||||
|
@ -87,6 +89,11 @@ mac802154_wpan_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
|
|||
break;
|
||||
}
|
||||
case SIOCSIFADDR:
|
||||
if (netif_running(dev)) {
|
||||
spin_unlock_bh(&sdata->mib_lock);
|
||||
return -EBUSY;
|
||||
}
|
||||
|
||||
dev_warn(&dev->dev,
|
||||
"Using DEBUGing ioctl SIOCSIFADDR isn't recommended!\n");
|
||||
if (sa->family != AF_IEEE802154 ||
|
||||
|
|
Loading…
Reference in New Issue